perm filename KLDCPX.LST[KL,SYS] blob sn#776611 filedate 1982-02-16 generic text, type T, neo UTF8
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 1
		KLDCP PAL[KL,SYS]	Page 1 	

     1				COMMENT ⊗   VALID 00005 PAGES
     2				C REC  PAGE   DESCRIPTION
     3				C00001 00001
     4				C00002 00002	DECSYSTEM10 KL10 PDP-11 DIAGNOSTIC CONSOLE PROGRAM
     5				C00004 00003	ASSEMBLY PARAMETERS
     6				C00008 00004	KLDCPU UTILITY PROGRAM PARAMETERS
     7				C00009 00005	FUQ::		THIS IS HERE TO AVOID GETTING A "LOCAL TAG BEFORE
     8				C00011 ENDMK
     9					C⊗;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 2
		KLDCP PAL[KL,SYS]	Page 2 	

    10					;DECSYSTEM10 KL10 PDP-11 DIAGNOSTIC CONSOLE PROGRAM
    11					
    12					
    13		000010			DECVER==010
    14		000000			MCNVER==0
    15		000007			SAILVR==7	;STANFORD VERSION NUMBER.  (DEFINING SAILVR MAKES STANFORD ASSEMBLY)
    16					
    17							
    18					.TITLE	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10
    19					
    20					.LIST	MC,MD
    21					;.DSABL	GBL
    22					;.DSABL	REG
    23					.ABS
    24					;.ENABL	AMA
    25					
    26					;JOHN R. KIRCHOFF
    27					;DIGITAL EQUIPMENT CORPORATION
    28					;MARLBORO, MASS. 01752
    29					
    30					
    31					;[  NOTE:  If you change SBST11, you should reassemble KLDCPU also! ]
    32					;Stanford Revision History.  
    33					;
    34					;1	 4/17/76	Convert to PALX
    35					;2	 4/19/76	Install EPTREL switch
    36					;			Fix LE,LT, etc. to use correct extension by default.
    37					;3	 4/26/76	Add clock sub-functions 4,5
    38					;4	 4/29/76	Make clock interrupt.  Fix SET MONMOD.
    39					;5	 5/11/76	Change clock subfunctions 4,5 for pdp-10 doubleword time
    40					;6	 5/24/76	Add MIT code for MZ, PCF, DDT command, ST mods,
    41					;			Also JBR's code for keeping DSKDMP BOOT in 11-core
    42					;7	 4/29/80	JEP (Jim Powell) & REG to support ethernet and QM protocol
    43					;			Through 7/80
    44					;8	 1/12/81	Bugtrap and fixes to ethernet stuff. (TVR)
    45					;9	 5/22/81	Ethernet input double buffered
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 3
		KLDCP PAL[KL,SYS]	Page 3 	

    46					;ASSEMBLY PARAMETERS
    47					
    48		000001			KLDCP=	1	;ASSEMBLE KLDCP
    49		000001			DTEASB=	1	;ASSEMBLE DTE20
    50		000001			DTEDEF= 1	;DEFINE DTE OFFSET ADDRESSES
    51		000001			DVSASB=	1	;ASSEMBLE DEVICE SERVICE
    52		000001			KWASB=	1	;ASSEMBLE KW CLOCK
    53		000001			DLASB=	1	;ASSEMBLE DL11
    54					;DHASB=	1	;ASSEMBLE DH11
    55					;TAASB=	1	;ASSEMBLE TA CASSETTE
    56					;RXASB=	1	;ASSEMBLE RX11/RX01 FLOPPY
    57		000001			TCASB=	1	;ASSEMBLE TC DECTAPE
    58					;RPASB=	1	;ASSEMBLE RP04 DISK PACK
    59					;LPASB=	1	;ASSEMBLE LP20 LINE PRINTER
    60		000001			EPTREL==1	;ASSEMBLE EXAMINES/DEPOSITS FOR COMMUNICATIONS RELATIVE TO EPT
    61					;BPTASB==1	;ASSEMBLE KLDCP TYPE BREAKPOINT STUFF
    62		000001			BOOASB==1	;ASSEMBLE DSKDMP BOOT STUFF
    63		000001			%%DDT==1	;ASSEMBLE TO ALLOW DDT TO COEXIST WITH KLDCP
    64		000001			TELASB==1	;ASSEMBLE DIALUP CONNECTION CODE, TURN OFF KLINIK FEATURE
    65		000001			CLKASB==1	;ASSEMBLE TCU-100 BATTERY CLOCK CODE
    66					;UTLASB==1	;ASSEMBLE LINKAGES TO KLDCPU
    67					;MONASB==1	;ASSEMBLE MONITOR TYPE COMMANDS (INCLUDES SOME ACT10 STUFF)
    68		000001			%%QMP==1	;Assemble queued message protocol,
    69								;front-end reloads from WAITS
    70								;ethernet support
    71					;;FSCASB==1	;Assemble statistics for QMP free storage.
    72					;;PCKASB==1	;Assemble checksumming of incoming PUPs (QMP11)
    73					
    74		000010			$NB=	8.	;USE 8 BREAKPOINTS
    75					
    76					;SUBROUTINE CODE BEGINS AT 16K (WORDS)
    77					
    78		100000			PRGSRT	=16.*1024.*2.
    79		160000			COREND	=28.*1024.*2.
    80					
    81					.IF DF %%DDT
    82		077766			%DDTS==PRGSRT-12
    83		003000			TOUTBF=3000	;OVERLAY BUFFER DOWN WHERE DIAGS GO
    84					.IFF
    85					TOUTBF=	70000	;OVERLAY BUFFER
    86					.ENDC
    87					
    88					;PDP-10 ABSOLUTE CORE LOCATIONS:
    89					
    90		000440			$STD=	440	;PDP-10 DIAGNOSTIC START ADDRESS
    91		000441			$DDT=	441	;PDP-10 DDT START ADDRESS
    92		000442			$STL=	442	;PDP-10 LOADER START ADDRESS
    93		000443			$STM=	443	;PDP-10 MONITOR START ADDRESS
    94					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 4
		KLDCP PAL[KL,SYS]	Page 3.1 	

    95					;PDP-10 KL10 EXEC PROCESS TABLE PARAMETERS. 
    96					;IF EPTREL
    97					
    98		000444			$DTFLG=	444	;DTE20 OPERATION COMPLETE FLAG
    99		000445			$DTCLK=	445	;DTE20 CLOCK INTERRUPT FLAG
   100					;;$DTCI=	446	;DTE20 CLOCK INTERRUPT INSTRUCTION (10 SOFTWARE ONLY)
   101					.LIF DF CLKASB
   102		000446			$DTTIME=446	;DTE20 TIME AND DATE FROM BATTERY BACKUP CLOCK
   103		000447			$DTT11=	447	;DTE20 10 TO 11 ARGUMENT
   104		000450			$DTF11=	450	;DTE20 11 TO 10 ARGUMENT
   105		000451			$DTCMD=	451	;DTE20 TO 11 COMMAND WORD
   106		000452			$DTSEQ=	452	;DTE20 OPERATION SEQUENCE NUMBER (10 SOFTWARE ONLY. NOT USED)
   107		000453			$DTOPR=	453	;DTE20 OPERATION IN PROGRESS FLAG (10 SOFTWARE ONLY. NOT USED)
   108		000454			$DTCHR=	454	;DTE20 LAST KEY TYPED ON CTY
   109		000455			$DTMTD=	455	;DTE20 MONITOR TTY OUTPUT COMPLETE FLAG
   110		000456			$DTMTI=	456	;DTE20 MONITOR TTY INPUT FLAG
   111		000457			$DTSWR=	457	;DTE20 PDP-10 SWITCH REGISTER
   112		000460			$DTQMP= 460	;DTE20 11 TELLS 10 THE SIZE OF A TO10 TRANSFER
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 5
		KLDCP PAL[KL,SYS]	Page 4 	

   113					;KLDCPU UTILITY PROGRAM PARAMETERS
   114					
   115					;UTILITY IDENTIFICATION
   116					
   117		003004			PID=	3004	;PROGRAM NAME
   118		003010			PDVER=	3010	;DEC VERSION
   119		003012			PMVER=	3012	;MCN VERSION
   120					
   121					;UTILITY SUB-PROGRAM DISPATCH ADDRESSES
   122					
   123		003020			PTABLE=	3020	;START OF TABLE
   124					
   125		003020			RXCOPY=	3020	;RX11/RX01 FLOPPY COPY PROGRAM
   126		003022			DTCOPY=	3022	;TC11 DECTAPE COPY PROGRAM
   127		003024			WFILE=	3024	;WRITE FILE FROM DTA/RX TO RP04 PROGRAM
   128		003026			TAPT=	3026	;TRANSFER FILE FROM APT10 TO RP04 PROGRAM
   129		003030			DSKDIR=	3030	;RP04 DISK DIRECTORY
   130		003032			REMOTE=	3032	;REMOTE TELETYPE COMMUNICATIONS
   131		001000			XMEMSZ==512.	;#OF K OF PDP-10 MEMORY TO ZERO IN MZ 0,-1 COMMAND
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 6
		KLDCP PAL[KL,SYS]	Page 5 	

   132					FUQ::		;THIS IS HERE TO AVOID GETTING A "LOCAL TAG BEFORE
   133							;FIRST LABEL" ERROR MESSAGE FROM PALX.
   134							;(THERE ARE MACRO DEFINITIONS WITH LOCAL TAGS IN THEM)
   135					
   136					;INSERT THE REST OF KLDCP
   137					
   138								;Parameters file
   139					.INSRT	PRM11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 7
		PRM11 PAL[KL,SYS]	Page 1 	

   140				COMMENT ⊗   VALID 00044 PAGES
   141				C REC  PAGE   DESCRIPTION
   142				C00001 00001
   143				C00005 00002	.SBTTL	*PRM11* DECSYSTEM10 PDP-11 PROGRAM/SUBROUTINE PARAMETERS, 4-AUG-75
   144				C00007 00003	.SBTTL	EMT DEFINITIONS
   145				C00010 00004	TELETYPE OUTPUT DEFINITIONS
   146				C00013 00005	MISCELLANEOUS FUNCTIONS
   147				C00016 00006	COMMUNICATION ROUTINES
   148				C00019 00007	DFXCT=	EMT!114	DIAGNOSTIC FUNCTION EXECUTE
   149				C00021 00008	.SBTTL	MACRO DEFINITIONS
   150				C00023 00009	BASIC MACROS
   151				C00024 00010	.MACRO	SL	REG,NUM
   152				C00025 00011	STANDARD PROGRAM ASSIGNMENTS
   153				C00027 00012	BIT ASSIGNMENTS
   154				C00028 00013	CHARACTERS USED
   155				C00030 00014	.SBTTL 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75
   156				C00033 00015	BIT ASSIGNMENTS FOR 10/11 INTERFACE REGISTERS
   157				C00036 00016	BIT ASSIGNMENTS FOR DIAG2 (WRITE)
   158				C00038 00017	BIT ASSIGNMENTS FOR STATUS (WRITE)
   159				C00041 00018	CLOCK CONTROL FUNCTIONS
   160				C00043 00019	CRAM FUNCTIONS
   161				C00045 00020	DATA PATH CONTROL FUNCTIONS
   162				C00046 00021	.SBTTL	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75
   163				C00048 00022	MACRO  TO GENERATE A RIGHT JUSTIFIED 3-BYTE VALUE
   164				C00050 00023	THIS IS A MACRO TO WAIT FOR A DONE FLAG
   165				C00052 00024	.SBTTL	*BBD*	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 2-JAN-75
   166				C00055 00025	 THE FOLLOWING MACRO (DTEVEC) DYNAMICLY COMPUTES THE INTERRUPT
   167				C00058 00026	BIT ASSIGNMENTS FOR DIAG1 (WRITE)
   168				C00060 00027	BIT ASSIGNMENTS FOR STATUS (WRITE)
   169				C00062 00028	 FUNCTION SELECT CODES
   170				C00064 00029	READ0	=110	 PI    (READ STATUS 0)
   171				C00065 00030	.SBTTL	*BBD*	KL10 EBOX MACRO DEFINITIONS, 4-MAR-75
   172				C00067 00031	MACRO  TO GENERATE A RIGHT JUSTIFIED 3-BYTE VALUE
   173				C00069 00032	THIS IS A MACRO TO WAIT FOR A DONE FLAG
   174				C00071 00033	.SBTTL	DEVICE SYMBOL DEFINITIONS, 4-JUNE-75
   175				C00074 00034	.SBTTL	KW11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
   176				C00075 00035	.SBTTL	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
   177				C00078 00036	.SBTTL	DH11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
   178				C00081 00037	 BIT DEFINITIONS FOR "DHLPR"- LINE PARAMETER REGISTER.
   179				C00083 00038	.SBTTL	TA11 (CASSETTE) DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75
   180				C00085 00039	.SBTTL	RX11/RX01 (FLOPPY) REGISTERS AND BIT DEFINITIONS, 22-JULY-75
   181				C00087 00040	.SBTTL	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
   182				C00089 00041	.SBTTL	RH11/RP04 REGISTER AND BIT DEFINITIONS, 4-JUNE-75
   183				C00092 00042	.SBTTL	LP20 REGISTER AND BIT DEFINITIONS, 27-JUNE-75
   184				C00095 00043	.SBTTL EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.
   185				C00096 00044	DSKDMP BOOTSTRAP PARAMETERS
   186				C00097 ENDMK
   187					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 8
		PRM11 PAL[KL,SYS]	Page 2 	*PRM11* DECSYSTEM10 PDP-11 PROGRAM/SUBROUTINE PARAMETERS, 4-AUG-75

   188					.SBTTL	*PRM11* DECSYSTEM10 PDP-11 PROGRAM/SUBROUTINE PARAMETERS, 4-AUG-75
   189					
   190					;PROGRAM CONTROL SWITCHES
   191					
   192		100000			ABORT=	100000		;ABORT AT PROGRAM PASS COMPLETION
   193					
   194		040000			RSTART=	40000		;RESTART TEST
   195		020000			TOTALS=	20000		;PRINT TEST TOTALS
   196		010000			NOPNT=	10000		;INHIBIT ALL PRINT OUT (EXCEPT FORCED)
   197					
   198		004000			PNTLPT=	4000		;PRINT ON LINE-PRINTER
   199		002000			DING=	2000		;RING TTY BELL ON ERROR
   200		001000			LOOPER=	1000		;LOOP ON ERROR
   201					
   202		000400			ERSTOP= 400		;HALT ON ERROR
   203		000200			PALERS=	200		;PRINT ALL ERRORS
   204		000100			RELIAB=	100		;RELIABILITY RUN MODE
   205					
   206		000040			TXTINH=	40		;TEXT INHIBIT
   207		000020			INHPAG=	20		;INHIBIT PAGING (PDP-10)
   208		000010			MODDVC=	10		;MODIFY DEVICE CODE (PDP-10)
   209					
   210		000004			INHCSH=	4		;INHIBIT CACHE (PDP-10)
   211		000002			OPRSEL=	2		;OPERATOR SELECTION
   212		000001			CHAIN=	1		;CHAIN CONTROL SWITCH
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 9
		PRM11 PAL[KL,SYS]	Page 3 	EMT DEFINITIONS

   213					.SBTTL	EMT DEFINITIONS
   214					;OPERATOR DEFINITION - SUBROUTINE CALLS
   215					
   216		104000			FATAL=	EMT!0	;FATAL PROGRAMMING ERROR.
   217		104001			ERRHLT=	EMT!1	;PROGRAM HALT, ONLY IF "ERSTOP" SWITCH SET
   218		104002			PRGHLT=	EMT!2	;PROGRAM HALT, DON'T CHECK SWITCH
   219		104003			RUNLP=	EMT!3	;CONSOLE IDLE RUN LOOP
   220		104226			DFLEGAL=EMT!226	;DIAGNOSTIC FUNCTION LEGALITY CHECK
   221					
   222					;TELETYPE INPUT DEFINITIONS
   223					; *** CALL SEQUENCE ***
   224					;  TT----
   225					;  RETURN, C BIT SET FOR NO/ERROR RESPONSE
   226					
   227		104004			TTILIN=	EMT!4	;READ TTY LINE INPUT INTO BUFFER
   228		104224			TTILNW=	EMT!224	;READ TTY LINE INPUT, WAIT FOREVER
   229		104225			TTICCL=	EMT!225	;PROCESS TTY INPUT FROM INDIRECT CCL BUFFER
   230		104005			TTICHR=	EMT!5	;INPUT A CHARACTER FROM BUFFER
   231		104144			TTBACK=	EMT!144	;BACKUP INPUT POINTER
   232		104006			TTLOOK=	EMT!6	;LOOK FOR A TTY INPUT
   233		104007			TTIOCT=	EMT!7	;INPUT AN OCTAL NUMBER FROM BUFFER
   234		104010			TTCOCT=	EMT!10	;INPUT & CHECK OCTAL, RTN IF OK
   235		104200			TTOCTE=	EMT!200	;INPUT EVEN OCTAL NUMBER
   236		104011			TTIDEC=	EMT!11	;INPUT A DECIMAL NUMBER FROM BUFFER
   237		104012			TTIYES=	EMT!12	;ASK YES-NO, N BIT ON NO, C BIT SET ON ERROR
   238		104013			TTALTM=	EMT!13	;ALT-MODE CHECK, C BIT SET IF NON-ALT-MODE
   239		104014			TTI36=	EMT!14	;READ 36 DIGIT NUMBER FROM BUFFER
   240		104015			TTIBRK=	EMT!15	;GET NUMBER INPUT BREAK CHARACTER
   241		104016			TTISDL=	EMT!16	;SPACE DELETE, C BIT SET ON NON-NUMBER
   242		104017			TTISDO=	EMT!17	;SPACE DELETE & OCTAL INPUT, RTN IF OK
   243		104020			TTIS36=	EMT!20	;SPACE DELETE & 36BIT INPUT, RTN IF OK
   244		104021			TTICRA=	EMT!21	;INPUT C-RAM ADDRESS
   245		104022			TTITRM=	EMT!22	;CHECK INPUT TERMINATOR, RTN IF OK
   246		104023			TTBTRM=	EMT!23	;BACKUP, THEN "
   247		104201			TTERM=	EMT!201	;NUMBER TERMINATION CHECK, C BIT SET IF ERROR
   248		104217			TTPINI=	EMT!217	;INITIALIZE INPUT & OUTPUT BUFFER POINTERS
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 10
		PRM11 PAL[KL,SYS]	Page 4 	EMT DEFINITIONS

   249					;TELETYPE OUTPUT DEFINITIONS
   250					; *** CALL SEQUENCE ***
   251					;  MOV ARG,R0		;IF CALL REQUIRES AN ARGUMENT
   252					;  P-----
   253					
   254		104024			PNTAL=	EMT!24	;PRINT ASCII LINE, ADDRESS IN R0
   255		104025			$PMSG=	EMT!25	;PRINT MESSAGE, TRAILING PARAMETER
   256		104026			$PMSGR=	EMT!26	;PRINT MESSAGE, CONDITIONAL ON "RPTFLG"
   257		104027			PNTCHR=	EMT!27	;PRINT ASCII CHARACTER IN R0
   258		104214			PNTCI=	EMT!214	;PRINT CHAR IMMEDIATE, TRAILING CHARS
   259		104030			PNTNBR=	EMT!30	;PRINT NUMBER
   260		104031			PCRLF=	EMT!31	;PRINT CR-LF
   261		104032			PSPACE=	EMT!32	;PRINT A SPACE
   262		104033			PSLASH=	EMT!33	;PRINT A SLASH
   263		104034			PCOMMA=	EMT!34	;PRINT A COMMA
   264		104227			PTAB=	EMT!227	;PRINT A TAB
   265		104035			PNTOCT=	EMT!35	;PRINT OCTAL NUMBER IN R0
   266		104036			PNTOCS=	EMT!36	;PRINT OCTAL IN R0, SUPPRESS LEADING ZEROS
   267		104037			PNTDEC=	EMT!37	;PRINT DECIMAL NUMBER IN R0
   268		104040			PNT18=	EMT!40	;PRINT LOWER 18 OF 36 BIT NUMBER
   269		104041			PNT23=	EMT!41	;PRINT LOWER 23 BITS OF 36 BIT NUMBER
   270		104041			PNT22=	EMT!41	; " OLD PNT23 "
   271		104042			PNT36=	EMT!42	;PRINT 36 BIT NUMBER, ADDRESS IN R0
   272		104134			PNT36B=	EMT!134	;PRINT 36 BIT NUMBER IN BINARY
   273		104137			PNTADR=	EMT!137	;PRINT PDP-10 ADDRESS
   274		104043			PFORCE=	EMT!43	;SET FORCED PRINTOUT FLAG
   275		104044			PNORML=	EMT!44	;CLEAR FORCED PRINTOUT FLAG
   276		104045			PBELL=	EMT!45	;DING THE TTY BELL
   277		104046			PNTODC=	EMT!46	;PRINT SPECIFIED OCTAL DIGITS
   278		104047			PNTODT=	EMT!47	;PRINT SPECIFIED DIGITS, TRAILING PARAMETER
   279					
   280		104151			PRINTT=	EMT!151	;PRINT, TTY OUTPUT
   281		104152			PTTY=	EMT!152	;PRINT, TTY DRIVER
   282		104153			PLPT=	EMT!153	;PRINT, LPT DRIVER
   283		104154			PLDBUF=	EMT!154	;PRINT, LOAD BUFFER
   284					
   285		104177			PNTBAK=	EMT!177	;PRINT, BACKUP OUTPUT INSERTION POINTER
   286					
   287		104215			PNTRST=	EMT!215	;PRINT, OUTPUT POINTERS RESET
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 11
		PRM11 PAL[KL,SYS]	Page 5 	EMT DEFINITIONS

   288					;MISCELLANEOUS FUNCTIONS
   289					
   290		104050			REGSAV=	EMT!50	;SAVE R0 THRU R5
   291		104051			REGRST=	EMT!51	;RESTORE R0 THRU R5
   292		104053			SHIFTR=	EMT!53	;SHIFT R0 RIGHT, TRAILING PARAMETER
   293		104054			SHIFTL=	EMT!54	;SHIFT R0 LEFT, TRAILING PARAMETER
   294		104146			PROL36=	EMT!146	;ROTATE LEFT 36 BITS
   295		104055			SETFLG=	EMT!55	;SET -1 TO FLAG, TRAILING PARAMETER
   296		104072			MULTPY=	EMT!72	;MULTIPLY
   297		104056			TDELAY=	EMT!56	;SMALL DELAY
   298		104057			SWITCH=	EMT!57	;READ THE SWITCH REGISTER, RETURNED IN R0
   299		104060			SWTSAM=	EMT!60	;RETURN PRESENT STORED SWITCHES IN R0
   300					
   301		104061			EOP=	EMT!61	;END OF PASS ROUTINE, RETURNS IF NOT COMPLETED
   302		104062			ERREOP=	EMT!62	;ERROR END OF PASS
   303		104063			EOPSET=	EMT!63	;SET END OF PASS PRINTOUT INTERVAL
   304					
   305					;DEVICE ROUTINES
   306					
   307		104206			NAMEXT=	EMT!206	;FILE NAME.EXT PROCESS
   308		104207			DTAFILE=EMT!207	;DECTAPE FILE SELECTION
   309		104210			RPFILE=	EMT!210	;RP04 FILE SELECTION
   310		104155			R50UPK=	EMT!155	;RAD50 TO ASCII UNPACK
   311		104165			ASCR50=	EMT!165	;ASCII TO RAD50 CONVERSION
   312		104156			DTINIT=	EMT!156	;DECTAPE INITIALIZATION
   313		104157			RPINIT=	EMT!157	;RP04 INITIALIZATION
   314		104166			RPLOAD=	EMT!166	;RP04 LOAD PACK
   315		104160			DVDATA=	EMT!160	;DEVICE DATA BLOCK READ
   316		104211			DTRDFL=	EMT!211	;DECTAPE READ FILE
   317		104212			DTWTFL=	EMT!212	;DECTAPE WRITE FILE
   318		104213			DTBASE=	EMT!213	;RETURN DECTAPE PARAMETER BASE ADDRESS
   319		104161			DTREAD=	EMT!161	;DECTAPE READ
   320		104205			DTWRT=	EMT!205	;DECTAPE WRITE
   321		104167			RPFIND=	EMT!167	;RP04 FIND FILE
   322		104170			RPLKUP=	EMT!170	;RP04 FILE DIRECTORY LOOKUP
   323		104171			RPRDFL=	EMT!171	;RP04 READ FILE
   324		104172			RPWRFL=	EMT!172	;RP04 WRITE FILE
   325		104162			RPREAD=	EMT!162	;RP04 READ
   326		104173			RPWRIT=	EMT!173	;RP04 WRITE
   327		104174			RPADDR=	EMT!174	;RP04 ADDRESS CALCULATION
   328		104175			RPBASE=	EMT!175	;RETURN RP04 PARAMETER BLOCK BASE ADDRESS
   329		104237			RPERROR=EMT!237	;RP04 ERROR REPORTER
   330		104163			DVFRAM=	EMT!163	;DEVICE DATA FRAME READ
   331		104164			DVWRD=	EMT!164	;DEVICE WORD READ
   332		104230			RXFILE=	EMT!230	;RX11/RX01 FLOPPY FILE SELECTION
   333		104231			RXINIT=	EMT!231	;  FLOPPY INITIALIZATION
   334		104232			RXRDFL=	EMT!232	;  FLOPPY READ FILE
   335		104233			RXWTFL=	EMT!233	;  FLOPPY WRITE FILE
   336		104234			RXBASE=	EMT!234	;  FLOPPY PARAMETER BLOCK BASE ADDRESS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 12
		PRM11 PAL[KL,SYS]	Page 5.1 	EMT DEFINITIONS

   337		104235			RXREAD=	EMT!235	;  FLOPPY READ
   338		104236			RXWRT=	EMT!236	;  FLOPPY WRITE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 13
		PRM11 PAL[KL,SYS]	Page 6 	EMT DEFINITIONS

   339					;COMMUNICATION ROUTINES
   340					
   341					.IF DF MONASB
   342					COMCMD=	EMT!220	;COMMUNICATIONS COMMAND
   343					COMRTRY=EMT!221	;COMMUNICATIONS COMMAND RETRY
   344					COMENQ=	EMT!222	;COMMUNICATIONS ENQUIRY
   345					COMEOT=	EMT!223	;COMMUNICATIONS END OF TRANSMISSION
   346					COMLIN=	EMT!64	;COMMUNICATIONS LINE INPUT
   347					COMSND=	EMT!65	;COMMUNICATIONS LINE OUTPUT
   348					COMACK=	EMT!66	;COMMUNICATIONS ACKNOWLEDGE
   349					COMNAK=	EMT!67	;COMMUNICATIONS NEGATIVE ACKNOWLEDGE
   350					COMCLR=	EMT!70	;COMMUNICATIONS CLEAR
   351					COMCTL=	EMT!71	;COMMUNICATIONS CONTROL SEQUENCE
   352					.ENDC
   353					
   354					;KL10 ROUTINES
   355					
   356		104073			WCRAM=	EMT!73	;WRITE IN TO C-RAM
   357		104074			RCRAM=	EMT!74	;READ THE C-RAM
   358		104075			WWADR=	EMT!75	;WRITE C-RAM ADDRESS
   359		104203			MICNUL=	EMT!203	;C-RAM FILL WITH 0'S
   360		104204			MICFIL=	EMT!204	;C-RAM FILL WITH 1'S
   361					
   362		104076			MRESET=	EMT!76	;MASTER RESET
   363					
   364		104145			TENSW=	EMT!145	;PDP-10 SWITCHES
   365					
   366		104077			TENSP=	EMT!77	;TURN OFF TEN RUNNING
   367					
   368		104176			TENCHR=	EMT!176	;PDP-10 LAST TYPED CHARACTER
   369					
   370		104100			SM=	EMT!100	;START MACHINE
   371		104101			EXCT=	EMT!101	;EXECUTE PDP10 INSTR, REQUIRES SM
   372		104102			LODAR=	EMT!102	;SPECIAL AR LOAD FOR EXCT AND MBOX TEST
   373		104147			SETMPH=	EMT!147	;SET M-BOX PHASE
   374					
   375		104135			ECLOK=	EMT!135	;E BOX CLOCK
   376		104136			ESYNC=	EMT!136	;E BOX SYNC
   377					
   378		104103			EXAM=	EMT!103	;EXAMINE 10 MEMORY
   379		104104			EXAMT=	EMT!104	;EXAMINE 10 MEMORY, TRAILING PARAMETERS
   380		104105			DPOS=	EMT!105	;DEPOSIT INTO 10 MEMORY
   381		104106			DPOST=	EMT!106	;DEPOSIT INTO 10 MEMORY, TRAILING PARAMETERS
   382		104107			DPOSVR=	EMT!107	;DEPOSIT AND VERIFY 10 MEMORY
   383		104110			DPOSVT=	EMT!110	;DEPOSIT AND VERIFY 10 MEMORY, TRAILING PARAMETERS
   384		104111			D10MON=	EMT!111	;DEPOSIT -1 INTO 10 FLAG WORD
   385		104112			D10ZRO=	EMT!112	;PDP-10 MEMORY ZERO
   386					
   387		104052			CMPR36=	EMT!52	;COMPARE 5 BYTE 36-BIT WORD
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 14
		PRM11 PAL[KL,SYS]	Page 6.1 	EMT DEFINITIONS

   388					
   389		104113			DTEBAS=	EMT!113	;RETURN DTE20 BASE ADDRESS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 15
		PRM11 PAL[KL,SYS]	Page 7 	EMT DEFINITIONS

   390		104114			DFXCT=	EMT!114	;DIAGNOSTIC FUNCTION EXECUTE
   391		104115			DFXCTT=	EMT!115	;DF EXECUTE, TRAILING PARAMETER
   392					
   393		104116			DFRD=	EMT!116	;DIAGNOSTIC FUNCTION READ
   394		104140			DFRDT=	EMT!140	;DF READ, TRAILING PARAMETER
   395		104117			DFRDMV=	EMT!117	;DIAGNOSTIC FUNCTION READ & MOVE
   396					
   397		104120			DFWRT=	EMT!120	;DIAGNOSTIC FUNCTION WRITE
   398		104141			DFWRTT=	EMT!141	;DF WRITE, TRAILING PARAMETERS
   399		104121			DFWIR=	EMT!121	;DIAGNOSTIC FUNCTION WRITE IR
   400					
   401		104122			DFSCLK=	EMT!122	;DIAGNOSTIC FUNCTION, SINGLE STEP CLOCK
   402					
   403		104123			DFPC=	EMT!123	;DIAGNOSTIC FUNCTION READ PC
   404		104124			DFVMA=	EMT!124	;DIAGNOSTIC FUNCTION READ VMA
   405		104125			DFADB=	EMT!125	;DIAGNOSTIC FUNCTION READ ADDRESS BREAK
   406		104150			DFVMAH=	EMT!150	;DIAGNOSTIC FUNCTION READ VMA HELD
   407					
   408		104126			RDRAM=	EMT!126	;READ D-RAM
   409		104127			WDRAM=	EMT!127	;WRITE D-RAM
   410		104130			DRAMAD=	EMT!130	;SELECT D-RAM ADDRESS
   411					
   412		104202			CLKPRM=	EMT!202	;RETURN ADDRESS OF "CLKDFL" WORD
   413					
   414		104131			BURST=	EMT!131	;BURST M-BOX CLOCK
   415					
   416		104132			PNTCPU=	EMT!132	;PRINT CPU, C-RAM & REGISTERS
   417					
   418		104142			PNTCRM=	EMT!142	;PRINT C-RAM, LOGICAL FIELD FORMAT
   419					
   420		104143			PNTDRM=	EMT!143	;PRINT D-RAM, LOGICAL FIELD FORMAT
   421					
   422		104133			PRGCMD=	EMT!133	;PROGRAM COMMAND
   423					
   424		104216			PRGNPT=	EMT!216	;PROGRAM COMMAND, NO PRINT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 16
		PRM11 PAL[KL,SYS]	Page 8 	MACRO DEFINITIONS

   425					.SBTTL	MACRO DEFINITIONS
   426					
   427		144720			.IIF P2,	$$CLIT==$$LITT	;LITERAL STORAGE ASSIGNMENT
   428					.IELSE		$$CLIT==2000
   429					
   430					.MACRO	PMSG	$ARG
   431						  $PMSG
   432						  $$CLIT
   433							.NLIST	SRC
   434							$$CLC=.
   435							.=$$CLIT
   436							.ASCIZ	↔$ARG↔
   437							$$CLIT=.
   438							.=$$CLC
   439							.LIST	SRC
   440					.ENDM
   441					
   442					.MACRO	PMSGR	$ARG
   443						  $PMSGR
   444						  $$CLIT
   445							.NLIST	SRC
   446							$$CLC=.
   447							.=$$CLIT
   448							.ASCIZ	↔$ARG↔
   449							$$CLIT=.
   450							.=$$CLC
   451							.LIST	SRC
   452					.ENDM
   453					
   454					.MACRO	PNTMSG	$ARG
   455						  MOV	#$$CLIT,R0
   456						  PNTAL
   457							.NLIST	SRC
   458							$$CLC=.
   459							.=$$CLIT
   460							.ASCIZ	↔$ARG↔
   461							.EVEN
   462							$$CLIT=.
   463							.=$$CLC
   464							.LIST	SRC
   465					.ENDM
   466					
   467					.MACRO	EXIT
   468						  JMP	$EXIT
   469					.ENDM
   470					
   471					.MACRO	EXITSKP
   472						  JMP	$EXITS
   473					.ENDM
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 17
		PRM11 PAL[KL,SYS]	Page 8.1 	MACRO DEFINITIONS

   474					
   475					.MACRO	EXITERR
   476						  JMP	$EXITE
   477					.ENDM
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 18
		PRM11 PAL[KL,SYS]	Page 9 	MACRO DEFINITIONS

   478					;BASIC MACROS
   479					
   480					.MACRO	PUSH	A
   481							.NLIST	SRC
   482						  .IRP	B,<A>
   483						  MOV	B,-(SP)	;PUSH B ON STACK
   484						  .ENDM
   485							.LIST	SRC
   486					.ENDM
   487					
   488					.MACRO	POP	A
   489							.NLIST	SRC
   490						  .IRP	B,<A>
   491						  MOV	(SP)+,B	;POP STACK INTO B
   492						  .ENDM
   493							.LIST	SRC
   494					.ENDM
   495					
   496					.MACRO	MULT	SOURCE,REG
   497						  PUSH	SOURCE
   498						  PUSH	REG
   499						  MULTPY
   500						  POP	REG
   501							.NTYPE	X,REG
   502							.IF	EQ X&1
   503							.IFT
   504						  POP	REG+1
   505							.IFF
   506						  INC	SP
   507						  INC	SP
   508							.ENDC
   509					.ENDM
   510					
   511					.MACRO	.LIT	$LTAG,$LARG
   512							$$CLC=.
   513							.=$$CLIT
   514							.EVEN
   515						  $LTAG=.
   516						  .IIF	B <$LARG>,0
   517						  .IIF	NB <$LARG>,$LARG
   518							.EVEN
   519							$$CLIT=.
   520							.=$$CLC
   521					.ENDM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 19
		PRM11 PAL[KL,SYS]	Page 10 	MACRO DEFINITIONS

   522					.MACRO	SL	REG,NUM
   523							.NLIST	SRC
   524							.IF	GT NUM-7
   525							.IFT
   526						  SWAB	REG
   527							.REPT	NUM-8.
   528						  ASL	REG
   529							.ENDR
   530							.IFF
   531							.REPT	NUM
   532						  ASL	REG
   533							.ENDR
   534							.ENDC
   535							.LIST	SRC
   536					.ENDM
   537					
   538					.MACRO	SR	REG,NUM
   539							.NLIST	SRC
   540							.IF	GT NUM-7
   541							.IFT
   542						  SWAB	REG
   543							.REPT	NUM-8
   544						  ASR	REG
   545							.ENDR
   546							.IFF
   547							.REPT	NUM
   548						  ASR	REG
   549							.ENDR
   550							.ENDC
   551							.LIST	SRC
   552					.ENDM
   553					
   554					.MACRO	EXOR	REG,DESTIN,SCRTCH
   555							.IF	NB SCRTCH
   556							.IFT
   557						  MOV	REG,SCRTCH
   558						  BIC	DESTIN,SCRTCH
   559						  BIC	REG,DESTIN
   560						  BIS	SCRTCH,DESTIN
   561							.IFF
   562						  MOV	REG,-(SP)
   563						  BIC	DESTIN,(SP)
   564						  BIC	REG,DESTIN
   565						  BIS	(SP)+,DESTIN
   566							.ENDC
   567					.ENDM
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 20
		PRM11 PAL[KL,SYS]	Page 11 	MACRO DEFINITIONS

   568					;STANDARD PROGRAM ASSIGNMENTS
   569					
   570					.IIF NDF STACK,	STACK==157776		;INITIAL STACK POINTER
   571					.IIF NDF CONSOL,CONSOL==100000		;CONSOLE START ADDRESS
   572					
   573		000001			CBIT=	1		;CARRY BIT
   574		000010			NBIT=	10		;NEGATIVE BIT
   575		000004			ZBIT=	4		;ZERO BIT
   576		000002			VBIT=	2		;OVERFLOW BIT
   577		000020			TBIT=	20		;TRAP BIT
   578					
   579					;REGISTER DEFINITIONS
   580					
   581		000000			R0=	%0		;GENERAL REGISTERS
   582		000001			R1=	%1
   583		000002			R2=	%2
   584		000003			R3=	%3
   585		000004			R4=	%4
   586		000005			R5=	%5
   587		000006			R6=	%6
   588		000006			SP=	%6		;STACK POINTER
   589		000007			PC=	%7		;PROGRAM COUNTER
   590					
   591					;PDP11/40 STANDARD TRAP VECTOR ASSIGNMENTS
   592					
   593		000000			RESVED=	0		;RESERVED
   594		000004			ERRVEC=	4		;TIME OUT, BUS ERROR
   595		000010			RESVEC=	10		;RESERVED INSTRUCTION
   596		000014			TRTVEC=	14		;BREAK POINT VECTOR
   597		000014			TBITVEC=14
   598		000014			BPTVEC= 14
   599		000020			IOTVEC=	20		;IOT TRAP VECTOR
   600		000024			PWRVEC=	24		;POWER FAIL TRAP VECTOR
   601		000030			EMTVEC=	30		;EMT TRAP VECTOR
   602		000034			TRAPVEC=34		;"TRAP" TRAP VECTOR
   603		000060			TKVEC=	60		;TTY KEYBOARD VECTOR
   604		000064			TPVEC=	64		;TTY PRINTER VECTOR
   605		000260			TA11=	260		;CASSETTE TAPE READER
   606		000214			TC11=	214		;DECTAPE VECTOR
   607					
   608					;PDP11/40 STANDARD ADDRESS ASSIGNMENTS
   609					
   610		177776			PS=	177776		;CPU STATUS
   611		177774			STKLMT=	177774		;STACK LIMIT
   612		177570			SWR=	177570		;CONSOLE SWITCH REGISTER
   613		177566			TTODBR=	177566		;TTY OUT DBR
   614		177564			TTOCSR=	177564		;TTY OUT CSR
   615					
   616		177562			TTIDBR=	177562		;TTY IN DBR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 21
		PRM11 PAL[KL,SYS]	Page 11.1 	MACRO DEFINITIONS

   617		177560			TTICSR=	177560		;TTY IN CSR
   618					
   619		174200			XORCR=	174200
   620		174202			XORSR=	174202
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 22
		PRM11 PAL[KL,SYS]	Page 12 	MACRO DEFINITIONS

   621					;BIT ASSIGNMENTS
   622					
   623		000001			BIT00=	1
   624		000001			BIT0=	BIT00
   625		000002			BIT01=	2
   626		000002			BIT1=	BIT01
   627		000004			BIT02=	4
   628		000004			BIT2=	BIT02
   629		000010			BIT03=	10
   630		000010			BIT3=	BIT03
   631		000020			BIT04=	20
   632		000020			BIT4=	BIT04
   633		000040			BIT05=	40
   634		000040			BIT5=	BIT05
   635					
   636		000100			BIT06=	100
   637		000100			BIT6=	BIT06
   638		000200			BIT07=	200
   639		000200			BIT7=	BIT07
   640		000400			BIT08=	400
   641		000400			BIT8=	BIT08
   642					
   643		001000			BIT09=	1000
   644		001000			BIT9=	BIT09
   645		002000			BIT10=	2000
   646		004000			BIT11=	4000
   647					
   648		010000			BIT12=	10000
   649		020000			BIT13=	20000
   650		040000			BIT14=	40000
   651					
   652		100000			BIT15=	100000
   653					
   654					;PRIORITY ASSIGNMENTS
   655					
   656		000000			PR0= 000
   657		000040			PR1= 040
   658		000100			PR2= 100
   659		000140			PR3= 140
   660		000200			PR4= 200
   661		000240			PR5= 240
   662		000300			PR6= 300
   663		000340			PR7= 340
   664					
   665		000140			.IIF DF SAILVR, CPUPR==PR3	;CLOCK AND DL11E INTERRUPTS ARE PERMITTED
   666					.IIF NDF SAILVR, CPUPR==PR7
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 23
		PRM11 PAL[KL,SYS]	Page 13 	MACRO DEFINITIONS

   667					;CHARACTERS USED
   668					
   669		000030			MSWCHR=	030		; MONITOR TO "KLDCP" SWITCH CHAR, CONTROL X
   670		000000			TEXTERM=0		; TERMINATES TEXT
   671		000011			TAB=	11		; TAB
   672		000011			CNTRLI=	11		; CONTROL-I (TAB)
   673		000012			LF=	12		; LINE FEED
   674		000013			VT=	13		; VERTICAL TAB
   675		000014			FF=	14		; FORM FEED
   676		000015			CR=	15		; CARRIAGE RETURN
   677		000007			BELL=	7		; BELL
   678		000040			BLANK=	40		; BLANK (SPACE)
   679		000040			SPACE=	40		; SPACE
   680		000054			COMMA=	54		; COMMA
   681		000057			SLASH=	57		; SLASH
   682		000134			BKSLH=	134		; BACK SLASH
   683		000137			BKARW=	137		; BACK ARROW
   684		000023			XOFF=	023		; X-OFF		(CONTROL S)
   685		000021			XON=	021		; X-ON		(CONTROL Q)
   686		000017			CNTRLO=	017		; CONTROL O
   687		000025			CNTRLU=	025		; CONTROL U
   688		000001			CNTRLA=	001		; CONTROL A
   689		000003			CNTRLC=	003		; CONTROL C
   690		000004			CNTRLD=	004		; CONTROL D
   691		000013			CNTRLK=	013		; CONTROL K
   692		000014			CNTRLL=	14		; CONTROL L
   693		000022			CNTRLR=	022		; CONTROL R
   694		000024			CNTRLT=	024		; CONTROL T
   695		000030			CNTRLX=	030		; CONTROL X
   696		000032			CNTRLZ=	032		; CONTROL Z
   697		000177			RUBOUT=	177		; RUB OUT
   698		000033			ALTMOD=	33		; ALTMODE
   699		000027			ETB=	27		; END OF TRANSMISSION BLOCK	(CONTROL W)
   700					.IF NDF SAILVR
   701					NULL=	026		; NULL FILLER CHAR
   702					.IFF
   703		000000			NULL=	000
   704					.ENDC
   705		000001			SYN=	001		; COMMUNICATIONS SYNC CHAR (CONTROL A)
   706					
   707					;.NLIST
   708					.IF	DF DTEASB
   709					;.LIST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 24
		PRM11 PAL[KL,SYS]	Page 14 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   710					.SBTTL 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75
   711					
   712		174400			DTEADR=	174400		;ADDRESS OF (FIRST) DTE20 DEVICE REGISTER BLOCK
   713		000040			DTESIZ=	000040		;SPACING BETWEEN CONSECUTIVE DTE20'S
   714		000004			DTEMAX=	4		;MAXIMUM NUMBER OF DTE20'S ON ONE PDP-11
   715		000005			DTESZS=	5		;SHIFT TO CONVERT DTE ADDRESS TO DTE #
   716					
   717					.IF	DF DTEDEF
   718					;OFFSETS FROM THE BASE OF THE DTE20 DEVICE REGISTER BLOCK
   719					;TO SPECIFIC 10/11 INTERFACE RAM LOCATIONS AND REGISTERS.
   720					
   721					; THE FIRST 12 REGISTERS ARE NOT INITIALIZED BY "INIT" (BECAUSE THEY ARE IN RAMS)
   722					
   723		000000			DLYCNT=	00		;DELAY COUNT			(ADDRESS XXXX00)
   724		000002			DEXWD3=	02		;DEPOSIT OR EXAMINE WORD 3	(ADDRESS XXXX02)
   725		000004			DEXWD2=	04		;DEPOSIT OR EXAMINE WORD 2	(ADDRESS XXXX04)
   726		000006			DEXWD1=	06		;DEPOSIT OR EXAMINE WORD 1	(ADDRESS XXXX06)
   727		000010			TENAD1=	10		;10 ADDRESS WORD 1 FOR DEX	(ADDRESS XXXX10)
   728		000012			TENAD2=	12		;10 ADDRESS WORD 2 FOR DEX	(ADDRESS XXXX12)
   729		000014			TO10BC=	14		;TO10 BYTE COUNT		(ADDRESS XXXX14)
   730		000016			TO11BC=	16		;TO11 BYTE COUNT		(ADDRESS XXXX16)
   731		000020			TO10AD=	20		;TO10 PDP11 MEMORY ADDRESS	(ADDRESS XXXX20)
   732		000022			TO11AD=	22		;TO11 PDP11 MEMORY ADDRESS	(ADDRESS XXXX22)
   733		000024			TO10DT=	24		;TO10 PDP11 DATA WORD		(ADDRESS XXXX24)
   734		000026			TO11DT=	26		;TO11 PDP11 DATA WORD		(ADDRESS XXXX26)
   735					
   736					; THE LAST 4 REGISTERS ARE INITIALIZED BY "INIT" (BECAUSE THEY ARE IN FLIP-FLOPS)
   737					
   738		000030			DIAG1=	30		;DIAGNOSTIC WORD 1		(ADDRESS XXXX30)
   739		000032			DIAG2=	32		;DIAGNOSTIC WORD 2		(ADDRESS XXXX32)
   740		000034			STATUS=	34		;10/11 INTERFACE STATUS WORD	(ADDRESS XXXX34)
   741		000036			DIAG3=	36		;DIAGNOSTIC WORD 3		(ADDRESS XXXX36)
   742					.ENDC
   743					
   744					;  THE FOLLOWING ARE THE ADDRESSES OF THE DTE20 INTERRUPT VECTORS
   745					
   746		000774			DTEIV0=	774		;INTERRUPT VECTOR FOR DTE20 #0
   747		000770			DTEIV1=	770		;INTERRUPT VECTOR FOR DTE20 #1
   748		000764			DTEIV2=	764		;INTERRUPT VECTOR FOR DTE20 #2
   749		000760			DTEIV3=	760		;INTERRUPT VECTOR FOR DTE20 #3
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 25
		PRM11 PAL[KL,SYS]	Page 15 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   750					;BIT ASSIGNMENTS FOR 10/11 INTERFACE REGISTERS
   751					
   752					;BIT ASSIGNMENTS FOR TENAD1
   753					
   754		100000			PHYS=	BIT15		;EXAMINE/DEP PHYSICAL ADDRESS
   755		060000			USEVIR=	BIT14!BIT13	;EX/DP USER VIRTUAL ADDRESS
   756		040000			XUPT=	BIT14		;EX/DP VIA USER PROCESS TABLE
   757		020000			EXVIRT=	BIT13		;EX/DP EXEC VIRTUAL ADDRESS
   758		010000			DEP=	BIT12		;MODE BIT FOR DEPOSIT (0=EXAMINE)
   759		004000			PRTOFF=	BIT11		;PROTECT OFF
   760		000000			XEPT=	0		;EX/DP VIA EXEC PROCESS TABLE
   761					
   762					;BIT ASSIGNMENTS FOR TO11BC
   763					
   764		100000			INT10=	BIT15		;SET DONE AND INTERRUPT BOTH 10 AND 11
   765		040000			ZSTOP=	BIT14		;STOP ON NULL (ZERO) CHARACTER
   766		020000			BYTE2=	BIT13		;TWO EIGHT BIT BYTES PER WORD
   767		020000			TO11BM=	BIT13		;TO-11 BYTE MODE
   768					
   769					;BIT ASSIGNMENTS FOR DIAG1 (WRITE)
   770					
   771		100000			DS00=	BIT15		;DIAGNOSTIC STATUS
   772		040000			DS01=	BIT14		; "
   773		020000			DS02=	BIT13		; "
   774		010000			DS03=	BIT12		; "
   775		004000			DS04=	BIT11		; "
   776		002000			DS05=	BIT10		; "
   777		001000			DS06=	BIT9		; "
   778		000200			DFUNC=	BIT7		;DOING DIAGNOSTIC FUNCTION (DFRD,DFWRT,DFXCT)
   779		000060			PULSE=	BIT4!BIT5	;SINGLE PULSE THE 10/11 CLOCK (ALSO SETS
   780								;10/11 DIAGNOSTIC MODE)
   781		000001			DCOMST=	BIT0		;DIAGNOSTIC COMMAND START
   782		000001			DCSRT=	BIT0		;DIAGNOSTIC COMMAND START (NEW NAME FOR DCOMST)
   783		000004			DSEND=	BIT2		;SEND THE EBUS DURING DIAGNOSTIC FUNCTION
   784		000010			DIKL10=	BIT3		;KL10 DIAGNOSTIC MODE
   785		000040			D1011=	BIT5		;10/11 INTERFACE DIAGNOSTIC MODE
   786					
   787					;BIT ASSIGNMENTS FOR DIAG1 (READ)
   788					
   789		000200			TO10=	BIT7		;INTERFACE MAJOR STATE = TO10 TRANSFER
   790		000400			DEX=	BIT8		;    "       "     "   = DEPOSIT OR EXAMINE
   791		000100			TO11=	BIT6		;    "       "     "   = TO11 TRANSFER
   792		000020			VEC04=	BIT4		;VECTOR INTERRUPT ADDRESS BIT 4
   793		000010			VEC03=	BIT3		;  "        "        "     "  3
   794		000004			VEC02=	BIT2		;  "        "        "     "  2
   795		001000			HALTLP=	BIT9		;EBOX IS IN HALT LOOP
   796		002000			KLRUN=	BIT10		;RUN FLOP, KL IS EXECUTING INSTRUCTIONS
   797		004000			ERRSTP=	BIT11		;EBOX CLOCK STOPPED DUE TO ERROR
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 26
		PRM11 PAL[KL,SYS]	Page 16 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   798					;BIT ASSIGNMENTS FOR DIAG2 (WRITE)
   799					
   800		040000			EDONES=	BIT14		;SET EBUS DONE
   801		000100			DRESET=	BIT6		;PERFORM DIAGNOSTIC CLEAR
   802					
   803					;BIT ASSIGNMENTS FOR DIAG2 (READ)
   804					
   805					;BIT ASSIGNMENTS FOR DIAG3 (WRITE)
   806					
   807		000040			SCD=	BIT5		;SHIFT CAPTURED DATA (PARITY ERROR DATA)
   808		000020			CDD=	BIT4		;CLEAR DUPE & DURE ERROR FLAGS
   809		000010			WEP=	BIT3		;WRITE EVEN (BAD) PARITY
   810		000002			CNUPE=	BIT1		;CLEAR NUPE
   811		000001			TO10BM=	BIT0		;TO-10 TRANSFER BYTES FROM THE 11
   812					
   813					;BIT ASSIGNMENTS FOR DIAG3 (READ)
   814					
   815		100000			RFMAD0=	BIT15		;RFM ADDRESS BIT 0
   816		040000			RFMAD1=	BIT14		; "     "     "  1
   817		020000			RFMAD2=	BIT13		; "     "     "  2
   818		010000			RFMAD3=	BIT12		; "     "     "  3
   819					
   820					;BIT ASSIGNMENTS FOR DIAG3 (READ)
   821					
   822		100000			SWSLFT=	BIT15		;SWAP SELECT LEFT
   823		040000			CAB08=	BIT14		;CAPTURED UNIBUS ADDRESS BIT 08
   824		000020			DUPE=	BIT4		;DATO UNIBUS PARITY ERROR
   825		000004			DURE=	BIT2		;DATO UNIBUS RECIEVER ERROR
   826		000002			NUPE=	BIT1		;NPR UNIBUS PARITY ERROR
   827		037000			UPECD=	BIT13!BIT12!BIT11!BIT10!BIT9	;UNIBUS PARITY ERR, CAPTURED DATA
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 27
		PRM11 PAL[KL,SYS]	Page 17 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   828					;BIT ASSIGNMENTS FOR STATUS (WRITE)
   829					
   830		100000			DON10S=	BIT15		;SET TO10 DONE
   831		040000			DON10C=	BIT14		;CLEAR TO10 DONE
   832		020000			ERR10S=	BIT13		;SET TO10 ERROR
   833		010000			ERR10C=	BIT12		;CLEAR TO10 ERROR
   834		004000			INT11S=	BIT11		;SET 10 REQ INTERRUPT (INTERRUPTS 11)
   835		002000			INT11C=	BIT10		;CLEAR 10 REQ INTERRUPT (REMOVES INTERRUPT TO 11)
   836		001000			PERCLR=	BIT9		;CLEAR -11 MEMORY PARITY ERROR
   837		000400			INT10S=	BIT8		;SET REQUEST 10 INTERRUPT (INTERRUPTS 10)
   838		000200			DON11S=	BIT7		;SET TO11 DONE
   839		000100			DON11C=	BIT6		;CLEAR TO11 DONE
   840		000040			INTRON=	BIT5		;ENABLE DTE20 TO INTERRUPT THE 11
   841		000020			EBUSPC=	BIT4		;CLEAR EBUS PARITY ERROR
   842		000010			INTROF=	BIT3		;DISABLE THE DTE20 11-INTERRUPTS
   843		000004			EBUSPS=	BIT2		;SET EBUS PARITY ERROR
   844		000002			ERR11S=	BIT1		;SET TO11 ERROR
   845		000001			ERR11C=	BIT0		;CLEAR TO11 ERROR
   846					
   847					;BIT ASSIGNMENTS FOR STATUS (READ)
   848					
   849		100000			TO10DN=	BIT15		;TO10 DONE
   850		020000			TO10ER=	BIT13		;TO 10 ERROR (NPR TIMEOUT OR BUS ERROR)
   851		010000			RAMIS0=	BIT12		;DATA OUT OF DTE RAM IS ALL 0S (RFM=0)
   852		004000			TO11DB=	BIT11		;10 REQUESTING 11 INTERRUPT (DOORBELL FROM 10)
   853		002000			DXWRD1=	BIT10		;DEPOSIT OR EXAMINE WORD ONE
   854		001000			D11MPE=	BIT9		;-11 MEMORY PARITY ERROR
   855		000400			TO10DB=	BIT8		;REQUEST 10 INTERRUPT (DOORBELL FROM 11)
   856		000200			TO11DN=	BIT7		;TO11 DONE
   857		000100			EBSEL=	BIT6		;E BUFFER SELECT
   858		000040			NULSTP=	BIT5		;NULL STOP
   859		000020			BPARER=	BIT4		;EBUS PARITY ERROR
   860		000010			RM=	BIT3		;THIS DTE20 IN RESTRICTED MODE
   861		000004			DEXDON=	BIT2		;DEPOSIT OR EXAMINE DONE
   862		000002			TO11ER=	BIT1		;TO 11 ERROR (NPR TIMEOUT OR BUS ERROR)
   863		000001			INTSON=	BIT0		;INTERRUPTS ON, DTE20 ENABLED TO INTERRUPT 11
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 28
		PRM11 PAL[KL,SYS]	Page 18 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   864					;CLOCK CONTROL FUNCTIONS
   865					
   866		000000			STPCLK=	000	; STOP CLOCK
   867		000001			STRCLK=	001	; START CLOCK
   868		000002			SSCLK=	002	; SINGLE STEP THE MBOX CLOCK
   869		000003			SECLK=	003	; SINGLE STEP EBOX CLOCK
   870		000004			CECLK=	004	; CONDITIONAL EBOX CLOCK
   871		000006			CLRMR=	006	; CLEAR MR RESET
   872		000007			SETMR=	007	; SET MR RESET
   873		000005			BRCLK=	005	; BURST THE CLOCK
   874					
   875					;CLOCK LOAD FUNCTIONS
   876					
   877		000042			LDBRR=	42	; LOAD BURST REGISTER RIGHT HALF
   878		000043			LDBRL=	43	; LOAD BURST REGISTER LEFT HALF
   879		000044			LDSEL=	44	; LOAD SOURCE AND RATE SELECTS
   880		000045			LDDIS=	45	; LOAD EBOX CLOCK DISTRIBUTION REGISTER
   881		000046			LDCHK1=	46	; LOAD PARITY CHECK REGISTER (ENABLE BAD PARITY STOP)
   882		000047			LDCHK2=	47	; LOAD EBOX INTERNAL CHECK REGISTER
   883					
   884					;DRAM FUNCTIONS
   885					
   886		000060			LDRAM1=	60	; LOAD A & B FIELDS EVEN
   887		000061			LDRAM2=	61	; LOAD A & B FIELDS ODD
   888		000062			LDRAM3=	62	; LOAD COMMON J1-J4
   889		000063			LDRJEV=	63	; LOAD PARITY & J8-J10 EVEN
   890		000064			LDRJOD=	64	; LOAD PARITY & J8-J10 ODD
   891		000133			DRAMAB=	133	; READ D-RAM A & B
   892		000135			DRJ710=	135	; READ D-RAM J7-J10
   893		000134			DRJ1.4=	134	; READ D-RAM J1-J4
   894					
   895					;IR DRAM CONTROL
   896					
   897		000065			DISIOJ=	65	; DISABLE 7XX & JRST=254
   898		000066			DISACF=	66	; DISABLE THE IR AC'C
   899		000067			ENIOJA=	67	; ENABLE 7XX, JRST=254 & IR AC'S
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 29
		PRM11 PAL[KL,SYS]	Page 19 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   900					;CRAM FUNCTIONS
   901					
   902		000057			LCRAM1=	57	; LOAD C-RAM DATA
   903		000056			LCRAM2=	56
   904		000055			LCRAM3=	55
   905		000054			LCRAM4=	54
   906		000053			LCRAM5=	53
   907		000052			LCRDAL=	52	; LOAD CRAM ADDRESS LEFT (00-04)
   908		000051			LCRDAR=	51	; LOAD CRAM ADDRESS RIGHT (05-10)
   909		000147			RCRAM1=	147	; READ C-RAM DATA
   910		000146			RCRAM2=	146
   911		000145			RCRAM3=	145
   912		000144			RCRAM4=	144
   913		000141			RCSPEC=	141	; READ C-RAM SPEC
   914					
   915					;MISC CONTROL FUNCTIONS
   916					
   917		000014			IRLOAD=	14	; LOAD THE IR FROM AD
   918		000015			DRLTCH=	15	; LOAD D-RAM LATCHES
   919		000010			CLRRUN=	10	; CLEAR RUN FLIP-FLOP
   920		000011			SETRUN=	11	; SET RUN FLIP-FLOP
   921		000012			CONBUT=	12	; THE CONTINUE BUTTON
   922		000077			LDAR=	77	; LOAD THE AR
   923					
   924					;MBOX CONTROL FUNCTIONS
   925					
   926		000071			LDMBXA=	71	; LOAD MEMORY TO CACHE SELECTOR
   927		000070			LDCHAN=	70	; LOAD CHANNEL DIAGNOSTIC CONDITIONS
   928					
   929					;PI CONTROL FUNCTIONS
   930					
   931		000100			READ0=	100	; PI    (READ STATUS 0)
   932		000101			READ1=	101	; PI	(READ STATUS 1)
   933		000102			READ2=	102	; PI	(READ STATUS 2)
   934		000103			READ3=	103	; PI	(READ STATUS 3)
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 30
		PRM11 PAL[KL,SYS]	Page 20 	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75

   935					;DATA PATH CONTROL FUNCTIONS
   936					
   937		000120			DPAR	=120	; AR
   938		000121			DPBR	=121	; BR
   939		000122			DPMQ	=122	; MQ
   940		000123			DPFM	=123	; FM
   941		000114			DPFMA	=114	; FM ADR
   942		000124			DPBRX	=124	; BRX
   943		000125			DPARX	=125	; ARX
   944		000126			DPADX	=126	; ADX
   945		000127			DPAD	=127	; AD
   946		000153			DPPC	=153	; PC
   947		000157			DPVMA	=157	; VMA
   948		000157			DPVMHD	=157	; VMA HELD
   949		000153			DPADB	=153	; ADDRESS BREAK
   950		000167			DPERG	=167	; E-BUS REGISTER
   951		000132			DPFE	=132	; FE 05-09
   952		000133			DPFE1	=133	; FE 00-04
   953		000130			DPSC	=130	; SC 05-09
   954		000131			DPSC1	=131	; SC 00-04
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 31
		PRM11 PAL[KL,SYS]	Page 21 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

   955					.SBTTL	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75
   956					
   957					;MACRO TO TURN 36 BIT WORDS INTO 5 UPSIDE DOWN BYTES
   958					
   959					.MACRO	WD36	A,B,C
   960						.NLIST	SRC
   961						  .BYTE	<377&C>,<<<C&7400>/400>!<<B&17>*20>>,<<B&7760>/20>
   962						  .BYTE	<A&377>,<<A&7400>/400>
   963						.LIST	SRC
   964					.ENDM
   965					
   966					;PDP10 CPU INSTRUCTION MACRO. TAKES 5 ARGUMENTS AS IN NORMAL
   967					;10 CODE. 5 FIELDS MUST BE PRESENT (4 FIELD SEPARATORS)
   968					;BUT THE AD,AC,I, AND XR FIELDS MAY BE LEFT BLANK AND IF SO,
   969					;WILL ASSEMBLE AS ZERO.  THE OP FIELD MUST NOT BE LEFT BLANK.
   970					
   971					.MACRO	I10	OP,CAC,CI,CAD,CXR
   972							ADH=0
   973							ADL=0
   974						  .IF	NB CAD
   975						  .IRPC	AD1,CAD
   976						  .IIF	GE <ADL-10000>,ADH=ADL/10000
   977						  ADL=10*<ADL&7777>+AD1
   978						  .ENDM
   979						  .ENDC
   980						  .IIF B CAC,AC=0
   981						  .IIF NB CAC,AC=CAC
   982						  .IIF B CI,I=0
   983						  .IIF NB CI,I=CI
   984						  .IIF B CXR,XR=0
   985						  .IIF NB CXR,XR=CXR
   986						.NLIST	SRC
   987						  .BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<AC&1*200+<I*100+<XR*4>>+<ADH/2>>
   988						  .BYTE	<OP&37*10+<AC/2>>,<OP/40>
   989						.LIST	SRC
   990					.ENDM	I10
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 32
		PRM11 PAL[KL,SYS]	Page 22 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

   991					;MACRO  TO GENERATE A RIGHT JUSTIFIED 3-BYTE VALUE
   992					;FOR A 22-BIT ARGUMENT
   993					
   994					.MACRO	WD22	AD
   995						  ADH=0
   996						  ADL=0
   997						  .IRPC	AD1,AD
   998						  .IIF	GE <ADL-10000>,ADH=<10*ADH>+<ADL/10000>
   999						  ADL=10*<ADL&7777>+AD1
  1000						.ENDM
  1001						.NLIST	SRC
  1002						.BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<ADH/2>
  1003						.LIST	SRC
  1004					.ENDM	WD22
  1005					
  1006					;PDP10 I/O INSTRUCTION MACRO. TAKES 5 ARGUMENT AS NOTED ABOVE
  1007					;IN THE DESCRIPTION OF THE I10 MACRO. THE 8 I/O OP CODES ARE
  1008					;DEFINED AS ARE DEVICE CODES APR, PI, PAG, AND CCA.
  1009					
  1010					.MACRO	IO10	OP,DV,CI,AD,CXR
  1011						  .IIF B CI,I=0
  1012						  .IIF NB CI,I=CI
  1013						  .IIF B CXR,XR=0
  1014						  .IIF NB CXR,XR=CXR
  1015							BLKO=2
  1016							DATAO=3
  1017							BLKI=0
  1018							DATAI=1
  1019							CONO=4
  1020							CONI=5
  1021							CONSZ=6
  1022							CONSO=7
  1023							APR=0
  1024							PI=4
  1025							PAG=10
  1026							CCA=14
  1027							ADH=0
  1028							ADL=0
  1029						  .IRPC AD1,AD
  1030						  .IIF GE <ADL-10000>,ADH=ADL/10000
  1031						  ADL=10*<ADL&7777>+AD1
  1032						  .ENDM
  1033						.NLIST	SRC
  1034						  .BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<OP&1*200+<I*100+<XR*4>>+<ADH/2>>
  1035						  .BYTE	<DV&374+<OP/2>>,<DV/400+16>
  1036						.LIST	SRC
  1037					.ENDM	IO10
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 33
		PRM11 PAL[KL,SYS]	Page 23 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1038					;THIS IS A MACRO TO WAIT FOR A DONE FLAG
  1039					
  1040					.MACRO	WFZERO BITSEL
  1041						  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
  1042					  91$:	  BIT	#BITSEL,@.DIAG1	;TEST BIT
  1043						  BEQ	92$		;LEAVE IF BIT ZERO(OK)
  1044						  DEC	(SP)		;DECREMENT CNT
  1045						  BNE	91$		;CONTINUE LOOP
  1046						  TST	RPTFLG		;OTHERWISE TIME OUT
  1047						  BNE	92$
  1048						  JSR	R1,$DFTIM
  1049					  92$:	  TST	(SP)+		;RESET STACK & CONTINUE
  1050					.ENDM
  1051					
  1052					
  1053					;THIS MACRO IS A WAIT FOR FLAG MACRO.
  1054					;IT WAITS FOR A TEST BIT TO GO TO ONE
  1055					;FROM A ZERO
  1056					
  1057					.MACRO	WFONE BITSEL
  1058						  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
  1059					  93$:	  BIT	#BITSEL,@.STDTE	;TEST BIT
  1060						  BNE	94$		;LEAVE IF NOW A ONE(OK)
  1061						  DEC	(SP)		;DECREMENT CNT
  1062						  BNE	93$		;CONTINUE LOOP
  1063						  TST	RPTFLG		;OTHERWISE TIME OUT
  1064						  BNE	94$
  1065						  JSR	R1,$DFTIM
  1066					  94$:	  TST	(SP)+		;RESET STACK
  1067					.ENDM
  1068					
  1069					;.NLIST
  1070					.ENDC	; DTEASB
  1071					;.LIST
  1072					;.NLIST
  1073					.IF	DF DTEBBD
  1074					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 34
		PRM11 PAL[KL,SYS]	Page 24 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1075					.SBTTL	*BBD*	DTE20 DEVICE REGISTER AND BIT DEFINITIONS, 2-JAN-75
  1076					
  1077					DTEADR=	164000		;ADDRESS OF (FIRST) DTE20 DEVICE REGISTER BLOCK
  1078					DTESIZ=	000040		;SPACING BETWEEN CONSECUTIVE DTE20'S
  1079					DTEMAX=	4		;MAXIMUM NUMBER OF DTE20'S ON ONE PDP-11
  1080					DTESZS=	5		;SHIFT TO CONVERT DTE ADDRESS TO DTE #
  1081					
  1082					.IF	DF DTEDEF
  1083					;OFFSETS FROM THE BASE OF THE DTE20 DEVICE REGISTER BLOCK
  1084					;TO SPECIFIC 10/11 INTERFACE RAM LOCATIONS AND REGISTERS.
  1085					
  1086					; THE FIRST 12 REGISTERS ARE NOT INITIALIZED BY "INIT" (BECAUSE THEY ARE IN RAMS)
  1087					
  1088					DLYCNT=	00		;DELAY COUNT			(ADDRESS XXXX00)
  1089					DEXWD1=	02		;DEPOSIT OR EXAMINE WORD 1	(ADDRESS XXXX02)
  1090					DEXWD2=	04		;DEPOSIT OR EXAMINE WORD 2	(ADDRESS XXXX04)
  1091					DEXWD3=	06		;DEPOSIT OR EXAMINE WORD 3	(ADDRESS XXXX06)
  1092					TENAD1=	10		;10 ADDRESS WORD 1 FOR DEX	(ADDRESS XXXX10)
  1093					TENAD2=	12		;10 ADDRESS WORD 2 FOR DEX	(ADDRESS XXXX12)
  1094					TO10BC=	14		;TO10 BYTE COUNT		(ADDRESS XXXX14)
  1095					TO11BC=	16		;TO11 BYTE COUNT		(ADDRESS XXXX16)
  1096					TO10AD=	20		;TO10 PDP11 MEMORY ADDRESS	(ADDRESS XXXX20)
  1097					TO11AD=	22		;TO11 PDP11 MEMORY ADDRESS	(ADDRESS XXXX22)
  1098					TO10DT=	24		;TO10 PDP11 DATA WORD		(ADDRESS XXXX24)
  1099					TO11DT=	26		;TO11 PDP11 DATA WORD		(ADDRESS XXXX26)
  1100					
  1101					; THE LAST 4 REGISTERS ARE INITIALIZED BY "INIT" (BECAUSE THEY ARE IN FLIP-FLOPS)
  1102					
  1103					DIAG1=	30		;DIAGNOSTIC WORD 1		(ADDRESS XXXX30)
  1104					DIAG2=	32		;DIAGNOSTIC WORD 2		(ADDRESS XXXX32)
  1105					STATUS=	34		;10/11 INTERFACE STATUS WORD	(ADDRESS XXXX34)
  1106					DIAG3=	36		;DIAGNOSTIC WORD 3		(ADDRESS XXXX36)
  1107					.ENDC
  1108					
  1109					;  THE FOLLOWING ARE THE ADDRESSES OF THE DTE20 INTERRUPT VECTORS
  1110					
  1111					DTEIV0=	170		;INTERRUPT VECTOR FOR DTE20 #0
  1112					DTEIV1=	174		;INTERRUPT VECTOR FOR DTE20 #1
  1113					DTEIV2=	270		;INTERRUPT VECTOR FOR DTE20 #2
  1114					DTEIV3=	274		;INTERRUPT VECTOR FOR DTE20 #3
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 35
		PRM11 PAL[KL,SYS]	Page 25 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1115					; THE FOLLOWING MACRO (DTEVEC) DYNAMICLY COMPUTES THE INTERRUPT
  1116					; VECTOR ADDRESS ASSOCIATED WITH A PARTICULAR DTE20.
  1117					; THE FIRST ARGUMENT (DTEDRB) IS A REGISTER OR MEMORY LOCATION
  1118					; WHICH CONTAINS THE BASE ADDRESS OF THE DEVICE REGISTER BLOCK
  1119					; FOR A PARTICULAR DTE20.
  1120					; THE SECOND ARGUMENT (DTEIVB) IS A REGISTER OR MEMORY LOCATION
  1121					; INTO WHICH THIS MACRO WILL STORE THE BASE ADDRESS OF THE INTERRUPT
  1122					; VECTOR ASSOCIATED WITH THE SAME DTE20.
  1123					
  1124					.MACRO	DTEVEC	DTEDRB,DTEIVB,?LABEL
  1125						  MOVB	DTEDRB,DTEIVB
  1126						  .NTYPE	DTE$T0,DTEIVB
  1127						  .IF	NE	DTE$T0&70	;IS "DTEIVB" A REGISTER?
  1128						  .IFT
  1129						  CLRB	DTEIVB+1
  1130						  .ENDC
  1131						  ADD	#DTEIV0,DTEIVB	;THIS MACRO DEPENDS ON THE BIT
  1132						  BIT	#DTESIZ,DTEIVB	;PATTERNS IN THE DEVICE REGISTER
  1133						  BNE	LABEL		;ADDRESSES AND INTERRUPT VECTOR
  1134						  SUB	#DTESIZ+DTEIV0-DTEIV1,DTEIVB	;ADDRESSES.
  1135					  LABEL:
  1136					.ENDM	DTEVEC
  1137					
  1138					;BIT ASSIGNMENTS FOR 10/11 INTERFACE REGISTERS
  1139					
  1140					;BIT ASSIGNMENTS FOR TENAD1
  1141					
  1142					DEP=BIT15		;MODE BIT FOR DEPOSIT (0=EXAMINE)
  1143					F1=BIT7			;HIGH ORDER BIT OF FAST AC BLOCK
  1144					F2=BIT6			;LOW    "    "  "   "   "    "
  1145					
  1146					;BIT ASSIGNMENTS FOR TO10BC
  1147					
  1148					INT11=BIT15		;SET DONE AND INTERRUPT BOTH 10 AND 11
  1149					
  1150					;BIT ASSIGNMENTS FOR TO11BC
  1151					
  1152					INT10=BIT15		;SET DONE AND INTERRUPT BOTH 10 AND 11
  1153					ZSTOP=BIT14		;STOP ON NULL (ZERO) CHARACTER
  1154					
  1155					;BIT ASSIGNMENTS FOR TO10AD AND TO11AD
  1156					
  1157					BYTE2=BIT0		;TWO EIGHT-BIT BYTES PER WORD
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 36
		PRM11 PAL[KL,SYS]	Page 26 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1158					;BIT ASSIGNMENTS FOR DIAG1 (WRITE)
  1159					
  1160					DPULSE=BIT7		;PULSE THE KL10 CLOCK
  1161					PULSE=BIT4!BIT0		;SINGLE PULSE THE 10/11 CLOCK (ALSO SETS
  1162								;10/11 DIAGNOSTIC MODE)
  1163					DBUSEN=BIT3		;DIAGNOSTIC BUS ENABLE
  1164					DCSRT=BIT3		;DIAGNOSTIC COMMAND START (NEW NAME FOR DBUSEN)
  1165					DSEND=BIT2		;SEND THE EBUS DURING DIAGNOSTIC FUNCTION
  1166					DIKL10=BIT1		;KL10 DIAGNOSTIC MODE
  1167					D1011=BIT0		;10/11 INTERFACE DIAGNOSTIC MODE
  1168					
  1169					;BIT ASSIGNMENTS FOR DIAG1 (READ)
  1170					
  1171					TO10=BIT7		;INTERFACE MAJOR STATE = TO10 TRANSFER
  1172					DEX=BIT6		;    "       "     "   = DEPOSIT OR EXAMINE
  1173					TO11=BIT5		;    "       "     "   = TO11 TRANSFER
  1174					VEC04=BIT4		;VECTOR INTERRUPT ADDRESS BIT 4
  1175					VEC03=BIT3		;  "        "        "     "  3
  1176					VEC02=BIT2		;  "        "        "     "  2
  1177					
  1178					;BIT ASSIGNMENTS FOR DIAG2 (WRITE)
  1179					
  1180					EDONES=BIT14		;SET EBUS DONE
  1181					STHOLD=BIT7		;STAY IN CURRENT MAJOR STATE
  1182					CLEAR=BIT6		;PERFORM DIAGNOSTIC CLEAR
  1183					
  1184					;BIT ASSIGNMENTS FOR DIAG2 (READ)
  1185					
  1186					;BIT ASSIGNMENTS FOR DIAG3 (READ)
  1187					
  1188					RAMIS0=BIT7		;RFM=0 (ALL ZEROES COMING OUT OF RAM)
  1189					RFMAD0=BIT1		;RFM ADDRESS BIT 0
  1190					RFMAD1=BIT8		; "     "     "  1
  1191					RFMAD2=BIT9		; "     "     "  2
  1192					RFMAD3=BIT10		; "     "     "  3
  1193					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 37
		PRM11 PAL[KL,SYS]	Page 27 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1194					;BIT ASSIGNMENTS FOR STATUS (WRITE)
  1195					
  1196					DON10S=BIT15		;SET TO10 DONE
  1197					DON10C=BIT14		;CLEAR TO10 DONE
  1198					ERR10S=BIT13		;SET TO10 ERROR
  1199					ERR10C=BIT12		;CLEAR TO10 ERROR
  1200					INT11S=BIT11		;SET 10 REQ INTERRUPT (INTERRUPTS 11)
  1201					INT11C=BIT10		;CLEAR 10 REQ INTERRUPT (REMOVES INTERRUPT TO 11)
  1202					PERCLR=BIT9		;CLEAR -11 MEMORY PARITY ERROR
  1203					INT10S=BIT8		;SET REQUEST 10 INTERRUPT (INTERRUPTS 10)
  1204					DON11S=BIT7		;SET TO11 DONE
  1205					DON11C=BIT6		;CLEAR TO11 DONE
  1206					ERR11S=BIT1		;SET TO11 ERROR
  1207					ERR11C=BIT0		;CLEAR TO11 ERROR
  1208					
  1209					;BIT ASSIGNMENTS FOR STATUS (READ)
  1210					
  1211					TO10DN=BIT15		;TO10 DONE
  1212					PI10OF=BIT14		;THIS DTE20 IS NOT TRYING TO INTERRUPT THE -10
  1213					TO10ER=BIT13		;TO 10 ERROR (NPR TIMEOUT OR BUS ERROR)
  1214					INTR11=BIT12		;11 INTERRUPT PENDING
  1215					DOOR10=BIT11		;10 REQUESTING 11 INTERRUPT (DOORBELL FROM 10)
  1216					DXWRD1=BIT10		;DEPOSIT OR EXAMINE WORD ONE
  1217					PARERR=BIT9		;-11 MEMORY PARITY ERROR
  1218					DOOR11=BIT8		;REQUEST 10 INTERRUPT (DOORBELL FROM 11)
  1219					TO11DN=BIT7		;TO11 DONE
  1220					EBSEL=BIT6		;E BUFFER SELECT
  1221					NULSTP=BIT5		;NULL STOP
  1222					DEAD10=BIT4		;KL10 STOPPED
  1223					DBUSON=BIT3		;DIAGNOSTIC BUS ENABLED
  1224					DEXDON=BIT2		;DEPOSIT OR EXAMINE DONE
  1225					TO11ER=BIT1		;TO 11 ERROR (NPR TIMEOUT OR BUS ERROR)
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 38
		PRM11 PAL[KL,SYS]	Page 28 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1226					; FUNCTION SELECT CODES
  1227					
  1228					STPCLK	=010	; STOP CLOCK
  1229					STRCLK	=011	; START CLOCK
  1230					SSCLK	=014	; SINGLE STEP THE CLOCK
  1231					CLRMR	=016	; CLEAR MR RESET
  1232					SETMR	=017	; SET MR RESET
  1233					BRCLK	=015	; BURST THE CLOCK
  1234					LDCLK	=012	; LOAD CLOCK BURST COUNTER & RATE
  1235					CLKCND	=101	; READ CLOCK CONDITION
  1236					
  1237					LDRAM1	=030	; LOAD D-RAM DATA
  1238					LDRAM2	=031
  1239					LDRAM3	=032
  1240					RDRAMA	=131	; READ D-RAM ADDRESS
  1241					RDRAM1	=132	; READ D-RAM DATA
  1242					RDRAM2	=133
  1243					DRAMAB	=132	; D-RAM A & B
  1244					DRAMJ	=133	; D-RAM J
  1245					
  1246					LCRAM1	=040	; LOAD C-RAM DATA
  1247					LCRAM2	=041
  1248					LCRAM3	=042
  1249					LCRAM4	=043
  1250					LCRAM5	=044
  1251					LCRAMA	=047	; LOAD C-RAM ADDRESS
  1252					RCRAM1	=140	; READ C-RAM DATA AND ADDRESS
  1253					RCRAM2	=141	; READ C-RAM DATA
  1254					RCRAM3	=142
  1255					RCRAM4	=143
  1256					
  1257					RELCTR	=000	; RELINQUISH CONTROL OF THE TRANSLATOR
  1258					DIAGRD	=001	; SET TRANSLATOR IN 10 TO 11 DIRECTION
  1259					DIAGLD	=002	; SET TRANSLATOR IN 11 TO 10 DIRECTION
  1260					IRLOAD	=003	; ENABLE LOADING OF THE AR & IR REGISTERS
  1261					DRLTCH	=005	; LOAD D-RAM LATCHES
  1262					CLRRUN	=007	; CLEAR RUN FLIP-FLOP
  1263					SETRUN	=006	; SET RUN FLIP-FLOP
  1264					CONBUT	=004	; THE CONTINUE BUTTON
  1265					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 39
		PRM11 PAL[KL,SYS]	Page 29 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1266					READ0	=110	; PI    (READ STATUS 0)
  1267					READ1	=111	; PI	(READ STATUS 1)
  1268					READ2	=112	; PI	(READ STATUS 2)
  1269					READ3	=113	; PI	(READ STATUS 3)
  1270					
  1271					DPAR	=120	; AR	(DATA PATH)
  1272					DPBR	=121	; BR
  1273					DPMQ	=122	; MQ
  1274					DPFM	=123	; FM
  1275					DPBRX	=124	; BRX
  1276					DPARX	=125	; ARX
  1277					DPADX	=126	; ADX
  1278					DPAD	=127	; AD
  1279					DPFE	=133	; FE
  1280					DPSC	=131	; SC
  1281					DPERG	=157	; E-BUS REGISTER
  1282					
  1283					RDPCH	=130	; READ PC 18-26
  1284					RDPCL	=131	; READ PC 27-35
  1285					RDVMAH	=132	; READ VMA 18-26
  1286					RDVMAL	=133	; READ VMA 27-35
  1287					
  1288					MCHLTLP	=42	; U CODE HALT LOOP ADDRESS
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 40
		PRM11 PAL[KL,SYS]	Page 30 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1289					.SBTTL	*BBD*	KL10 EBOX MACRO DEFINITIONS, 4-MAR-75
  1290					
  1291					;MACRO TO TURN 36 BIT WORDS INTO 5 UPSIDE DOWN BYTES
  1292					
  1293					.MACRO	WD36	A,B,C
  1294						.NLIST	SRC
  1295						  .BYTE	<377&C>,<<<C&7400>/400>!<<B&17>*20>>,<<B&7760>/20>
  1296						  .BYTE	<A&377>,<<A&7400>/400>
  1297						.LIST	SRC
  1298					.ENDM
  1299					
  1300					;PDP10 CPU INSTRUCTION MACRO. TAKES 5 ARGUMENTS AS IN NORMAL
  1301					;10 CODE. 5 FIELDS MUST BE PRESENT (4 FIELD SEPARATORS)
  1302					;BUT THE AD,AC,I, AND XR FIELDS MAY BE LEFT BLANK AND IF SO,
  1303					;WILL ASSEMBLE AS ZERO.  THE OP FIELD MUST NOT BE LEFT BLANK.
  1304					
  1305					.MACRO	I10	OP,CAC,CI,CAD,CXR
  1306							ADH=0
  1307							ADL=0
  1308						  .IF	NB CAD
  1309						  .IRPC	AD1,CAD
  1310						  .IIF	GE <ADL-10000>,ADH=ADL/10000
  1311						  ADL=10*<ADL&7777>+AD1
  1312						  .ENDM
  1313						  .ENDC
  1314						  .IIF B CAC,AC=0
  1315						  .IIF NB CAC,AC=CAC
  1316						  .IIF B CI,I=0
  1317						  .IIF NB CI,I=CI
  1318						  .IIF B CXR,XR=0
  1319						  .IIF NB CXR,XR=CXR
  1320						.NLIST	SRC
  1321						  .BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<AC&1*200+<I*100+<XR*4>>+<ADH/2>>
  1322						  .BYTE	<OP&37*10+<AC/2>>,<OP/40>
  1323						.LIST	SRC
  1324					.ENDM	I10
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 41
		PRM11 PAL[KL,SYS]	Page 31 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1325					;MACRO  TO GENERATE A RIGHT JUSTIFIED 3-BYTE VALUE
  1326					;FOR A 22-BIT ARGUMENT
  1327					
  1328					.MACRO	WD22	AD
  1329						  ADH=0
  1330						  ADL=0
  1331						  .IRPC	AD1,AD
  1332						  .IIF	GE <ADL-10000>,ADH=<10*ADH>+<ADL/10000>
  1333						  ADL=10*<ADL&7777>+AD1
  1334						.ENDM
  1335						.NLIST	SRC
  1336						.BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<ADH/2>
  1337						.LIST	SRC
  1338					.ENDM	WD22
  1339					
  1340					;PDP10 I/O INSTRUCTION MACRO. TAKES 5 ARGUMENT AS NOTED ABOVE
  1341					;IN THE DESCRIPTION OF THE I10 MACRO. THE 8 I/O OP CODES ARE
  1342					;DEFINED AS ARE DEVICE CODES APR, PI, PAG, AND CCA.
  1343					
  1344					.MACRO	IO10	OP,DV,CI,AD,CXR
  1345						  .IIF B CI,I=0
  1346						  .IIF NB CI,I=CI
  1347						  .IIF B CXR,XR=0
  1348						  .IIF NB CXR,XR=CXR
  1349							BLKO=2
  1350							DATAO=3
  1351							BLKI=0
  1352							DATAI=1
  1353							CONO=4
  1354							CONI=5
  1355							CONSZ=6
  1356							CONSO=7
  1357							APR=0
  1358							PI=4
  1359							PAG=10
  1360							CCA=14
  1361							ADH=0
  1362							ADL=0
  1363						  .IRPC AD1,AD
  1364						  .IIF GE <ADL-10000>,ADH=ADL/10000
  1365						  ADL=10*<ADL&7777>+AD1
  1366						  .ENDM
  1367						.NLIST	SRC
  1368						  .BYTE	<ADL&377>,<<ADL/400>!<ADH*200&377>>,<OP&1*200+<I*100+<XR*4>>+<ADH/2>>
  1369						  .BYTE	<DV&374+<OP/2>>,<DV/400+16>
  1370						.LIST	SRC
  1371					.ENDM	IO10
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 42
		PRM11 PAL[KL,SYS]	Page 32 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1372					;THIS IS A MACRO TO WAIT FOR A DONE FLAG
  1373					
  1374					.MACRO	WFZERO BITSEL
  1375						  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
  1376					  91$:	  BIT	#BITSEL,@.DIAG1	;TEST BIT
  1377						  BEQ	92$		;LEAVE IF BIT ZERO(OK)
  1378						  DEC	(SP)		;DECREMENT CNT
  1379						  BNE	91$		;CONTINUE LOOP
  1380						  TST	RPTFLG		;OTHERWISE TIME OUT
  1381						  BNE	92$
  1382						  JSR	R1,$DFTIM
  1383					  92$:	  TST	(SP)+		;RESET STACK & CONTINUE
  1384					.ENDM
  1385					
  1386					
  1387					;THIS MACRO IS A WAIT FOR FLAG MACRO.
  1388					;IT WAITS FOR A TEST BIT TO GO TO ONE
  1389					;FROM A ZERO
  1390					
  1391					.MACRO	WFONE BITSEL
  1392						  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
  1393					  93$:	  BIT	#BITSEL,@.STDTE	;TEST BIT
  1394						  BNE	94$		;LEAVE IF NOW A ONE(OK)
  1395						  DEC	(SP)		;DECREMENT CNT
  1396						  BNE	93$		;CONTINUE LOOP
  1397						  TST	RPTFLG		;OTHERWISE TIME OUT
  1398						  BNE	94$
  1399						  JSR	R1,$DFTIM
  1400					  94$:	  TST	(SP)+		;RESET STACK
  1401					.ENDM
  1402					
  1403					;.NLIST
  1404					.ENDC	; DTEBBD
  1405					;.LIST
  1406					;.NLIST
  1407					.IF	DF DVASB
  1408					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 43
		PRM11 PAL[KL,SYS]	Page 33 	KL10 EBOX MACRO DEFINITIONS, 4-JUNE-75

  1409					.SBTTL	DEVICE SYMBOL DEFINITIONS, 4-JUNE-75
  1410					
  1411					; PRIORITY LEVELS FOR SERVICE ROUTINES.
  1412					
  1413					TPILEV=	PR6		; TERMINAL PRIORITY LEVEL
  1414					NXMPIL=	PR7		; "NON-X-MEM" PRIORITY LEVEL
  1415					DHRPS=	TPILEV		; DH11 RECEIVER PRIORITY
  1416					DHTPS=	DHRPS		; DH11 TRANSMITTER
  1417					DLRPS=	DHRPS		; DL11
  1418					DLTPS=	DLRPS
  1419					KWLPS=	DHRPS		; KW11 PRIORITY LEVEL
  1420					NXMPS=	NXMPIL		; "NON-X-MEM" PRIORITY LEVEL
  1421					
  1422					; BIT DEFINITIONS FOR THE PARAMETER WORD.
  1423					
  1424					PDHDNS=	11		; DH11 DEVICE NUMBER SHIFT
  1425					PDHDNM=	7000		; DH11 DEVICE NUMBER MASK
  1426					PDHLNS=	4		; DH11 LINE NUMBER SHIFT
  1427					PDHLNM=	360		; DH11 LINE NUMBER MASK
  1428					PDHLSS=	0		; DH11 LINE SPEED SHIFT
  1429					PDHLSM=	17		; DH11 LINE SPEED MASK
  1430					PDLFCS=	PDHLNS		; DL11 FILLER CLASS SHIFT
  1431					PDLFCM=	PDHLNS		; DL11 FILLER CLASS MASK
  1432					
  1433					; OTHER DEVICES.
  1434					
  1435					DP11BA=	174770		; DP11 DEVICE REGISTERS BASE ADDRESS
  1436					DP11RS=	10		; DP11 DEVICE REGISTER SIZE
  1437					DP11VS=	10		; DP11 INTERRUPT VECTOR SIZE
  1438					DM11BA=	170500		; DM11 DEVICE REGISTER BASE ADDRESS
  1439					DM11RS=	10		; DM11 DEVICE REGISTER SIZE
  1440					DM11VS=	4		; DM11 INTERRUPT VECTOR SIZE
  1441					DR11BA=	167770		; DR11 DEVICE REGISTER BASE ADDRESS
  1442					DR11RS=	10		; DR11 DEVICE REGISTER SIZE
  1443					DR11VS=	10		; DR11 INTERRUPT VECTOR SIZE
  1444					
  1445					;.NLIST
  1446					.ENDC	;DVASB
  1447					;.LIST
  1448					;.NLIST
  1449					.IF	DF KWASB
  1450					;.LIST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 44
		PRM11 PAL[KL,SYS]	Page 34 	KW11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1451					.SBTTL	KW11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
  1452					
  1453		000100			KWLIV=	100		; VECTOR ADDRESS
  1454					
  1455		177546			KWLKS=	177546		; LINE CLOCK STATUS DEVICE ADDRESS
  1456					
  1457		000100			KWLKE=	100		; LINE CLOCK INTERRUPT ENABLE BIT
  1458					
  1459					.SBTTL	MM11 DEVICE REGISTERS AND BIT ASSIGNMENTS, 4-JUNE-75
  1460					
  1461		000114			MMLPIV=	114		;VECTOR ADDRESS
  1462					
  1463		172100			MMLPBA=	172100		;1ST MM11-LP DEVICE ADDRESS
  1464		172136			MMLPEA=	172136		;LAST MM11-LP DEVICE ADDRESS
  1465					
  1466		100000			MMERRF=	BIT15		;ERROR FLAG
  1467					
  1468		007740			MMADDM=	7740		;ADDRESS MASK
  1469		000005			MMADDS=	5		;ADDRESS SHIFT
  1470					
  1471		000004			MMWWP=	BIT2		;WRITE WRONG PARITY
  1472		000001			MMPIE=	BIT0		;PARITY INTERRUPT ENABLE
  1473					
  1474					;.NLIST
  1475					.ENDC	;KWASB
  1476					;.LIST
  1477					;.NLIST
  1478					.IF	DF DLASB
  1479					;.LIST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 45
		PRM11 PAL[KL,SYS]	Page 35 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1480					.SBTTL	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
  1481					
  1482		000060			DLRIV=	60		; RECEIVER VECTOR ADDRESS
  1483		000064			DLTIV=	DLRIV+4		; TRANSMITTER VECTOR ADDRESS
  1484		177560			DLBA=	177560		; BASE FOR DEVICE ADDRESSES
  1485		000000			DLRCSR=	0		; RECEIVER STATUS REGISTER
  1486		000002			DLRBUF=	2		; RECEIVER BUFFER REGISTER
  1487		000004			DLXCSR=	4		; TRANSMITTER STATUS REGISTER
  1488		000006			DLXBUF=	6		; TRANSMITTER BUFFER REGISTER
  1489					
  1490					; BIT DEFINITIONS FOR "DLRCSR"- RECEIVER CONTROL STATUS REGISTER.
  1491					
  1492		100000			DLDSC=	BIT15		; DATA STATUS CHANGE
  1493		040000			DLRI=	BIT14		; RING INDICATOR
  1494		020000			DLCTS=	BIT13		; CLEAR TO SEND
  1495		010000			DLCD=	BIT12		; CARRIER DETECT
  1496		004000			DLRA=	BIT11		; RECEIVER ACTIVE
  1497		002000			DLSRD=	BIT10		; SECONDARY RECEIVED DATA
  1498		000200			DLRD=	BIT7		; RECEIVER DONE
  1499		000100			DLRIE=	BIT6		; RECEIVER INTERRUPT ENABLE
  1500		000040			DLDIE=	BIT5		; DATA SET INTERRUPT ENABLE
  1501		000010			DLSTD=	BIT3		; SECONDARY TRANSMITTED DATA
  1502		000004			DLRTS=	BIT2		; REQUEST TO SEND
  1503		000002			DLDTR=	BIT1		; DATA TERMINAL READY
  1504		000001			DLRE=	BIT0		; READER ENABLE
  1505					
  1506					; BIT DEFINITIONS FOR "DLRBUF"- RECEIVER BUFFER.
  1507					
  1508		100000			DLERR=	BIT15		; ERROR
  1509		040000			DLORE=	BIT14		; OVERRUN ERROR
  1510		020000			DLFE=	BIT13		; FRAMING ERROR
  1511		010000			DLRDPE=	BIT12		; RECEIVED DATA PARITY ERROR
  1512		000000			DLRDS=	0		; RECEIVED DATA SHIFT
  1513		000377			DLRDM=	377		; RECEIVED DATA MASK
  1514					
  1515					; BIT DEFINITIONS FOR "DLXCSR"- TRANSMITTER CONTROL STATUS REGISTER.
  1516					
  1517		000200			DLTR=	BIT7		; TRANSMITTER READY
  1518		000100			DLTIE=	BIT6		; TRANSMITTER INTERRUPT ENABLE
  1519		000004			DLMAIN=	BIT2		; MAINTENANCE
  1520		000001			DLBRK=	BIT0		; BREAK
  1521					
  1522					; BIT DEFINITIONS FOR "DLXBUF"- TRANSMITTER BUFFER.
  1523					
  1524		000000			DLTDS=	0		; TRANSMITTER DATA SHIFT
  1525		000377			DLTDM=	377		; TRANSMITTER DATA MASK
  1526					
  1527					;.NLIST
  1528					.ENDC	;DLASB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 46
		PRM11 PAL[KL,SYS]	Page 35.1 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1529					;.LIST
  1530					;.NLIST
  1531					.IF	DF DHASB
  1532					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 47
		PRM11 PAL[KL,SYS]	Page 36 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1533					.SBTTL	DH11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
  1534					
  1535					DHIVBA=	300		; INTERRUPT VECTOR BASE ADDRESS
  1536					DHRIV=	0		; RECEIVER VECTOR ADDRESS
  1537					DHTIV=	DHRIV+4		; TRANSMITTER VECTOR ADDRESS
  1538					DHBA=	160020		; BASE FOR DEVICE ADDRESSES
  1539					DHSCR=	0		; SYSTEM CONTROL REGISTER
  1540					DHNRCR=	2		; NEXT RECEIVER CHARACTER REGISTER
  1541					DHLPR=	4		; LINE PARAMETER REGISTER
  1542					DHCAR=	6		; CURRENT ADDRESS REGISTER
  1543					DHBCR=	10		; BYTE COUNT REGISTER
  1544					DHBAR=	12		; TRANSMIT BUFFER ACTIVE REGISTER
  1545					DHTBR=	14		; TRANSMIT BREAK REGISTER
  1546					DHSSR=	16		; SILO STATUS REGISTER
  1547					
  1548					; BIT DEFINITIONS FOR "DHSCR"- STATUS CONTROL REGISTER.
  1549					
  1550					DHTI=	BIT15		; TRANSMITTER INTERRUPT
  1551					DHSI=	BIT14		; STORAGE INTERRUPT
  1552					DHTNIE=	BIT13		; TRANSMITTER AND NON-X-MEM INTERRUPT ENABLE
  1553					DHSIE=	BIT12		; STORAGE INTERRUPT ENABLE
  1554					DHMC=	BIT11		; MASTER CLEAR
  1555					DHNXM=	BIT10		; NON-X-MEM
  1556					DHMAIN=	BIT9		; MAINTENANCE
  1557					DHCNXM=	BIT8		; CLEAR NON-X-MEM BIT
  1558					DHRI=	BIT7		; RECEIVER INTERRUPT
  1559					DHRIE=	BIT6		; RECEIVER INTERRUPT ENABLE
  1560					DHMES=	4		; MEMORY EXTENSION SHIFT
  1561					DHMEM=	60		; MEMORY EXTENSION MASK
  1562					DHLSS=	0		; LINE SELECTION SHIFT
  1563					DHLSM=	17		; LINE SELECTION MASK
  1564					
  1565					; BIT DEFINITIONS FOR "DHNRCR"- NEXT RECEIVER CHARACTER REGISTER.
  1566					
  1567					DHDP=	BIT15		; DATA PRESENT
  1568					DHORE=	BIT14		; OVERRUN ERROR
  1569					DHFE=	BIT13		; FRAMING ERROR
  1570					DHRDPE=	BIT12		; RECEIVER DATA PARITY ERROR
  1571					DHRLNS=	10		; RECEIVER LINE NUMBER SHIFT
  1572					DHRLNM=	7400		; RECEIVER LINE NUMBER MASK
  1573					DHRDS=	0		; RECEIVER DATA SHIFT
  1574					DHRDM=	377		; RECEIVER DATA MASK
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 48
		PRM11 PAL[KL,SYS]	Page 37 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1575					; BIT DEFINITIONS FOR "DHLPR"- LINE PARAMETER REGISTER.
  1576					
  1577					DHAEE=	BIT15		; AUTO-ECHO ENABLE
  1578					DHHD=	BIT14		; HALF-DUPLEX
  1579					DHTSS=	12		; TRANSMITTER SPEED SHIFT
  1580					DHTSM=	36000		; TRANSMITTER SPEED MASK
  1581					DHRSS=	6		; RECEIVER SPEED SHIFT
  1582					DHRSM=	1700		; RECEIVER SPEED MASK
  1583					DHEP=	BIT5		; EVEN PARITY
  1584					DHPE=	BIT4		; PARITY ENABLE
  1585					DHTSB=	BIT2		; TWO STOP BITS
  1586					DHCLS=	0		; CHARACTER LENGTH SHIFT
  1587					DHCLM=	3		; CHARACTER LENGTH MASK
  1588					DHCL5=	0		; CHARACTER LENGTH - 5 BITS
  1589					DHCL6=	1		; CHARACTER LENGTH - 6 BITS
  1590					DHCL7=	2		; CHARACTER LENGTH - 7 BITS
  1591					DHCL8=	3		; CHARACTER LENGTH - 8 BITS
  1592					
  1593					; BIT DEFINITIONS FOR "DHSSR"- SILO STATUS REGISTER.
  1594					
  1595					DHSFLS=	10		; SILO FILL LEVEL SHIFT
  1596					DHSFLM=	37400		; SILO FILL LEVEL MASK
  1597					DHREMS=	6		; READ EXTENDED MEMORY SHIFT
  1598					DHREMM=	300		; READ EXTENDED MEMORY MASK
  1599					DHSALS=	0		; SILO ALARM LEVEL SHIFT
  1600					DHSALM=	77		; SILO ALARM LEVEL MASK
  1601					
  1602					;.NLIST
  1603					.ENDC	;DHASB
  1604					;.LIST
  1605					;.NLIST
  1606					.IF	DF TAASB
  1607					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 49
		PRM11 PAL[KL,SYS]	Page 38 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1608					.SBTTL	TA11 (CASSETTE) DEVICE REGISTER AND BIT DEFINITIONS, 4-JUNE-75
  1609					
  1610					TACS=	177500		;CONTROL AND STATUS REGISTER
  1611					TADB=	TACS+2		;DATA BUFFER REGISTER
  1612					
  1613					TAIV=	260		;INTERRUPT VECTOR
  1614					
  1615					; BIT ASSIGNMENTS WITHIN THE CONTROL AND STATUS REGISTER
  1616					
  1617					TAGO=	1		;GO = START OPERATION
  1618					TAFUNC=	16		;"FUNCTION TO BE PERFORMED" FIELD
  1619					TAWFG=	0*2		;"WRITE FILE GAP" FUNCTION
  1620					TAWRIT=	1*2		;"WRITE DATA" FUNCTION
  1621					TAREAD=	2*2		;"READ DATA" FUNCTION
  1622					TASRF=	3*2		;"SPACE REVERSE FILE" FUNCTION
  1623					TASRB=	4*2		;"SPACE REVERSE BLOCK (RECORD)" FUNCTION
  1624					TASFF=	5*2		;"SPACE FORWARD FILE" FUNCTION
  1625					TASFB=	6*2		;"SPACE REVERSE BLOCK (RECORD)" FUNCTION
  1626					TAREWD=	7*2		;"REWIND" FUNCTION
  1627					TAILBS=	20		;INITIATE LAST BYTE SEQUENCE
  1628					TAREDY=	40		;READY
  1629					TAINTE=	100		;INTERRUPT ENABLE
  1630					TARQST=	200		;TRANSFER REQUEST
  1631					TAUNIT=	400		;UNIT SELECTION
  1632					TAOFFL=	1000		;UNIT OFF LINE
  1633					TATERR=	2000		;TIMING ERROR (LOST DATA)
  1634					TAFGAP=	4000		;FILE GAP
  1635					TALOCK=	10000		;WRITE LOCKED
  1636					TALEAD=	20000		;CLEAR LEADER
  1637					TABCHK=	40000		;BLOCK CHECK (BAD CRC AFTER READ)
  1638					TAEROR=	100000		;ERROR (ERROR SUMMARY BIT)
  1639					
  1640					;.NLIST
  1641					.ENDC	;TAASB
  1642					;.LIST
  1643					;.NLIST
  1644					.IF	DF RXASB
  1645					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 50
		PRM11 PAL[KL,SYS]	Page 39 	DL11 DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1646					.SBTTL	RX11/RX01 (FLOPPY) REGISTERS AND BIT DEFINITIONS, 22-JULY-75
  1647					
  1648					;RX11 STANDARD DEVICE ADDRESSES
  1649					
  1650					RXCS=	177170		;COMMAND STATUS REGISTER
  1651					RXDB=	177172		;DATA BUFFER REGISTER
  1652					RXSA=	177172		;SECTOR ADDRESS REGISTER
  1653					RXTA=	177172		;TRACK ADDRESS REGISTER
  1654					RXES=	177172		;ERROR STATUS REGISTER
  1655					
  1656					RXIV=	264		;INTERRUPT VECTOR ADDRESS
  1657					
  1658					;RX11 FUNCTION CODES
  1659					
  1660					RXFBUF=	0		;FILL BUFFER
  1661					RXEBUF=	2		;EMPTY BUFFER
  1662					RXWSEC=	4		;WRITE SECTOR
  1663					RXRSEC=	6		;READ SECTOR
  1664					RXRSTAT=12		;READ STATUS
  1665					RXWDDS=	14		;WRITE DELETED DATA SECTOR
  1666					RXRERR=	16		;READ ERROR REGISTER
  1667					
  1668					;RX11 COMMAND AND STATUS REGISTER BIT DEFINITIONS
  1669					
  1670					RXGO=	1		;GO
  1671					RXU1=	20		;RX01 UNIT # 1
  1672					RXDONE=	40		;DONE
  1673					RXIE=	100		;INTERRUPT ENABLE
  1674					RXTREQ=	200		;TRANSFER REQUEST
  1675					RXINI=	40000		;INITIALIZE
  1676					RXERROR=100000		;ERROR
  1677					
  1678					;RX11 ERROR STATUS REGISTER BIT DEFINITIONS
  1679					
  1680					RXCRCE=	1		;CRC ERROR
  1681					RXPARE=	2		;PARITY ERROR
  1682					RXIDONE=4		;INITIALIZE DONE
  1683					RXDDD=	100		;DELETED DATA DETECTED
  1684					RXDRDY	=200		;DRIVE READY
  1685					
  1686					;.NLIST
  1687					.ENDC	;RXASB
  1688					;.LIST
  1689					;.NLIST
  1690					.IF	DF TCASB
  1691					;.LIST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 51
		PRM11 PAL[KL,SYS]	Page 40 	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1692					.SBTTL	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75
  1693					
  1694					;DECTAPE PARAMETERS
  1695					
  1696		010000			TCILO=	BIT12		;ILLEGAL OPERATION
  1697		004000			TCSELE=	BIT11		;SELECTION ERROR
  1698		000100			TCIE=	BIT6		;INTERRUPT ENABLE
  1699		000001			TCDO=	BIT0		;DO OPERATION
  1700		000004			TCRDATA=BIT2		;READ DATA
  1701		000014			TCWDATA=BIT3+BIT2	;WRITE DATA
  1702		000002			TCRNUM=	BIT1		;READ BLOCK NUMBER
  1703		004000			TCREV=	BIT11		;REVERSE DIRECTION
  1704		040000			TCPAR=	BIT14		;PARITY ERROR
  1705		002000			TCBLKM=	BIT10		;BLOCK MISSED
  1706		001000			TCDATM=	BIT9		;DATA MISSED
  1707		020000			TCMTE=	BIT13		;MARK TRACK ERROR
  1708		100000			TCERR=	BIT15		;DECTAPE ERROR
  1709		000200			TCRDY=	BIT7		;READY
  1710					
  1711		063000			TCSOFT=	TCPAR+TCBLKM+TCDATM+TCMTE
  1712					
  1713		177340			TCST=	177340		;STATUS REGISTER
  1714		177342			TCCM=	177342		;COMMAND REGISTER
  1715		177343			TCCM1=	177343		;COMMAND UPPER BYTE
  1716		177344			TCWC=	177344		;WORD COUNT REGISTER
  1717		177346			TCBA=	177346		;BUS MEMORY ADDRESS
  1718		177350			TCDT=	177350		;DATA REGISTER
  1719					
  1720					;.NLIST
  1721					.ENDC	;TCASB
  1722					;.LIST
  1723					;.NLIST
  1724					.IF	DF RPASB
  1725					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 52
		PRM11 PAL[KL,SYS]	Page 41 	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1726					.SBTTL	RH11/RP04 REGISTER AND BIT DEFINITIONS, 4-JUNE-75
  1727					
  1728					BLKSIZ=	256.	;DISK BLOCK SIZE (IN 16-BIT WORDS)
  1729					IFESIZ=	3	;INDEX FILE ENTRY SIZE (IN 16-BIT WORDS)
  1730					FDESIZ=	16.	;FILE DIRECTORY ENTRY SIZE (IN 16-BIT WORDS)
  1731					
  1732					RPCS1=	0	;OFFSET TO RH11/RP04 CONTROL & STATUS REGISTER 1
  1733					RPTRE=	BIT14	;"TRANSFER ERROR" BIT IN RPCS1
  1734					RPMCPE=	BIT13	;"MASSBUS CONTROL BUS PARITY ERROR" BIT IN RPCS1
  1735					RPDVA=	BIT11	;"DRIVE AVAILABLE" BIT IN RPCS1
  1736					RPRDY=	BIT7	;"CONTROLLER READY" BIT IN RPCS1
  1737					RPPRST=	21	;READ-IN PRESET FUNCTION IN RPCS1
  1738					RPPACK=	23	;PACK ACKNOWLEDGE (SET VV) FUNCTION IN RPCS1
  1739					RPWTFN=	61	;WRITE DATA FUNCTION IN RPCS1
  1740					RPRDFN=	71	;READ DATA FUNCTION IN RPCS1
  1741					
  1742					RPWC=	2	;OFFSET TO RH11/RP04 WORD COUNT REGISTER
  1743					
  1744					RPBA=	4	;OFFSET TO RH11/RP04 UNIBUS ADDRESS REGISTER
  1745					
  1746					RPDA=	6	;OFFSET TO RH11/RP04 TRACK & SECTOR ADDRESS REGISTER
  1747					
  1748					RPCS2=	10	;OFFSET TO RH11/RP04 CONTROL & STATUS REGISTER 2
  1749					RPCLR=	BIT5	;"CONTROLLER (AND MASSBUS) CLEAR" BIT IN RPCS2
  1750					
  1751					RPDS=	12	;OFFSET TO RH11/RP04 DRIVE STATUS REGISTER
  1752					RPATA=	BIT15	;"ATTENTION ACTIVE" BIT IN RPDS
  1753					RPERR=	BIT14	;"COMPOSITE ERROR" BIT IN RPDS
  1754					RPMOL=	BIT12	;"MEDIUM ON-LINE" BIT IN RPDS
  1755					RPDPR=	BIT8	;"DRIVE PRESENT" BIT IN RPDS
  1756					RPDRY=	BIT7	;"DRIVE READY" BIT IN RPDS
  1757					RPVV=	BIT6	;"VOLUME VALID" BIT IN RPDS
  1758					
  1759					RPOF=	32	;OFFSET TO RH11/RP04 OFFSET REGISTER (CONTAINING FMT22)
  1760					RPFMT=	BIT12	;"FMT22" (16-BIT WORDS) BIT IN RPOF
  1761					RPECI=	BIT11	;"ERROR CORRECTION CODE INHIBIT" BIT IN RPOF
  1762					
  1763					RPDC=	34	;OFFSET TO RH11/RP04 DESIRED CYLINDER REGISTER
  1764					
  1765					;.NLIST
  1766					.ENDC	;RPASB
  1767					;.LIST
  1768					;.NLIST
  1769					.IF	DF LPASB
  1770					;.LIST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 53
		PRM11 PAL[KL,SYS]	Page 42 	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1771					.SBTTL	LP20 REGISTER AND BIT DEFINITIONS, 27-JUNE-75
  1772					
  1773					LP20A=	177440	;LP20 1ST CONTROLLER ADDRESS
  1774					LP20B=	177460	;LP20 2ND CONTROLLER ADDRESS
  1775					LPAVEC=	210	;LP20A INTERRUPT VECTOR
  1776					LPBVEC=	200	;LP20B INTERRUPT VECTOR
  1777					
  1778					LPCSRA=	0	;OFFSET TO LP20 PRIMARY STATUS REGISTER
  1779					LPERR=	BIT15	;"ERROR" BIT IN LPCSRA
  1780					LPPZRO=	BIT14	;"PAGZRO" BIT IN LPCSRA
  1781					LPUCHR=	BIT13	;"UNDCHR" BIT IN LPCSRA
  1782					LPVRDY=	BIT12	;"UNDCHR" BIT IN LPCSRA
  1783					LPONLN=	BIT11	;"ONLINE" BIT IN LPCSRA
  1784					LPDELH=	BIT10	;"DELHLD" BIT IN LPCSRA
  1785					LPLINI=	BIT9	;"LOINIT" BIT IN LPCSRA
  1786					LPRERR=	BIT8	;"RSTERR" BIT IN LPCSRA
  1787					LPDONE=	BIT7	;"DONE" BIT IN LPCSRA
  1788					LPIENB=	BIT6	;"INTENB" BIT IN LPCSRA
  1789					LPBA17=	BIT5	;"BUSA17" BIT IN LPCSRA
  1790					LPBA16=	BIT4	;"BUSA16" BIT IN LPCSRA
  1791					LPVLOD=	BIT3	;"VFULOD" BIT IN LPCSRA
  1792					LPTMOD=	BIT2	;"TSTMOD" BIT IN LPCSRA
  1793					LPPENB=	BIT1	;"PARENB" BIT IN LPCSRA
  1794					LPGO=	BIT0	;"GO" BIT IN LPCSRA
  1795					
  1796					LPCSRB=	2	;OFFSET TO LP20 ERROR AND TEST REGISTER
  1797					LPTPBT=	BIT12	;"LPTPBT" BIT IN LPCSRB
  1798					LPT02=	BIT10	;"TEST02" BIT IN LPCSRB
  1799					LPT01=	BIT9	;"TEST01" BIT IN LPCSRB
  1800					LPT00=	BIT8	;"TEST00" BIT IN LPCSRB
  1801					LPOFFL=	BIT7	;"OFFLIN" BIT IN LPCSRB
  1802					LPVERR=	BIT6	;"VFUERR" BIT IN LPCSRB
  1803					LPTPAR=	BIT5	;"LPTPAR" BIT IN LPCSRB
  1804					LPMPAR=	BIT4	;"MEMPAR" BIT IN LPCSRB
  1805					LPRPAR=	BIT3	;"RAMPAR" BIT IN LPCSRB
  1806					LPSYNT=	BIT2	;"SYNTIM" BIT IN LPCSRB
  1807					LPDEMT=	BIT1	;"DEMTIM" BIT IN LPCSRB
  1808					LPGOER=	BIT0	;"GOERR" BIT IN LPCSRB
  1809					
  1810					LPBSAD=	4	;OFFSET TO LP20 DMA BUS ADDRESS REGISTER
  1811					
  1812					LPBCTR=	6	;OFFSET TO LP20 DMA BYTE COUNTER REGISTER
  1813					
  1814					LPPCTR=	10	;OFFSET TO LP20 PAGE COUNTER REGISTER
  1815					
  1816					LPRAMD=	12	;OFFSET TO LP20 RAM DATA REGISTER
  1817					
  1818					LPCBUF=	14	;OFFSET TO LP20 CHAR BUFFER REGISTER (BYTE)
  1819					LPCCTR=	15	;OFFSET TO LP20 COLUMN COUNTER REGISTER (BYTE)
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 54
		PRM11 PAL[KL,SYS]	Page 42.1 	TC11 (DECTAPE) DEVICE REGISTERS AND BIT DEFINITIONS, 4-JUNE-75

  1820					
  1821					LPCKSM=	16	;OFFSET TO LP20 CHECKSUM REGISTER (BYTE)
  1822					LPPDAT=	17	;OFFSET TO LP20 PRINTER DATA REGISTER (BYTE)
  1823					;.NLIST
  1824					.ENDC	;LPASB
  1825					;.LIST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 55
		PRM11 PAL[KL,SYS]	Page 43 	EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.

  1826					.SBTTL EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.
  1827					 
  1828		160020			ENOWC=160020		; ETHERNET DEVICE OUTPUT WORD COUNT REG
  1829		160022			ENOWA=ENOWC+2		; ETHERNET DEVICE OUTPUT WORD ADDR REG
  1830		160024			ENOCSR=ENOWC+4		; ETHERNET DEVICE OUTPUT CONTROL STATUS REG
  1831		160026			ENODLY=ENOWC+6		; ETHERNET DEVICE OUTPUT DELAY REG
  1832					;
  1833		160030			ENIWC=ENOWC+10		; ETHERNET DEVICE INPUT WORD COUNT REG
  1834		160032			ENIWA=ENOWC+12		; ETHERNET DEVICE INPUT WORD ADDRESS REG
  1835		160034			ENICSR=ENOWC+14		; ETHERNET DEVICE INPUT CONTROL STATUS REG
  1836		160036			ENIADR=ENOWC+16		; ETHERNET DEVICE HARDWARE ADDRESS REGISTER
  1837					;
  1838		000454			EN0BSZ=300.		; MAXIMUM SIZE OF ETHERNET INPUT BUFFER
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 56
		PRM11 PAL[KL,SYS]	Page 44 	EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.

  1839					;DSKDMP BOOTSTRAP PARAMETERS
  1840					
  1841		000620			BOOTWD==400.
  1842		002260			BOOTSZ==BOOTWD*3		;NUMBER OF PDP-11 WORDS THAT BOOT OCCUPIES
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 57
		KLDCP PAL[KL,SYS]	Page 5.1 	EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.

  1843					
  1844								;Starting vectors & other constant code
  1845					.INSRT	BEG11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 58
		BEG11 PAL[KL,SYS]	Page 1 	EN11 - PDP11/ETHERNET INTERFACE MODULE DEVICE REGISTERS ETC.

  1846				COMMENT ⊗   VALID 00002 PAGES
  1847				C REC  PAGE   DESCRIPTION
  1848				C00001 00001
  1849				C00002 00002	.SBTTL	*BEGIN* PROGRAM CONTROL, 4-AUG-75
  1850				C00005 ENDMK
  1851					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 59
		BEG11 PAL[KL,SYS]	Page 2 	*BEGIN* PROGRAM CONTROL, 4-AUG-75

  1852					.SBTTL	*BEGIN* PROGRAM CONTROL, 4-AUG-75
  1853					
  1854		100000				.=PRGSRT
  1855					;STARTING ADDRESS
  1856					
  1857	100000	000137	114570		START:	JMP	@#$SBRINT	;NORMAL START (near maximum violence)
  1858	100004	000137	100602		$CNTLC:	JMP	@#$$CNTLC	;CTRL/C (a normal, not too violent restart)
  1859	100010	000137	114522		$ILOAD:	JMP	$$ILOAD		;INITIAL LOAD (redo checksum, then $SBRINT)
  1860	100014	000137	100332		$CONSL:	JMP	$$CONSL		;RETURN TO CONSOLE (pussycat)
  1861					
  1862					;DEVICE ADDRESS PARAMETERS
  1863					
  1864	100020	177560			$TKS:	177560			;TTY KBD STATUS
  1865	100022	177562			$TKB:	177562			;TTY KBD BUFFER
  1866	100024	177564			$TPS:	177564			;TTY PRINTER STATUS
  1867	100026	177566			$TPB:	177566			;TTY PRINTER BUFFER
  1868					
  1869					.IF DF LPASB
  1870					$LPS:	177514			;LP11 - LINE PRINTER STATUS
  1871					$LPB:	177516			;LP11 - LINE PRINTER BUFFER
  1872					.ENDC
  1873					
  1874					.IF DF TELASB
  1875	100030	175610			$FSTKS:	175610			;FIELD SERVICE KLINIK INPUT STATUS
  1876	100032	175612			$FSTKB:	175612			;FIELD SERVICE KLINIK INPUT BUFFER
  1877	100034	175614			$FSTPS:	175614			;FIELD SERVICE KLINIK OUTPUT STATUS
  1878	100036	175616			$FSTPB:	175616			;FIELD SERVICE KLINIK OUTPUT BUFFER
  1879	100040	000300			$FSTRV:	300			;FIELD SERVICE TELETYPE RECEIVE VECTOR
  1880	100042	000304			$FSTTV:	304			;FIELD SERVICE TELETYPE TRANSMIT VECTOR
  1881					.ENDC
  1882					
  1883					.IF DF CLKASB
  1884	100044	160770			$CLKMD:	160770			;MONTH/DAY
  1885	100046	160772			$CLKHM:	160772			;HOURS/MINUTES
  1886	100050	160774			$CLKSEC:160774			;YEAR/SECONDS
  1887	100052	160776			$CLKST:	160776			;STATUS
  1888	100054	000170			$CLKTV:	170			;TRAP VECTOR
  1889					.ENDC
  1890					
  1891					.IF DF MONASB
  1892					$CMTKS:	175620			;COMM INPUT STATUS
  1893					$CMTKB:	175622			;COMM INPUT BUFFER
  1894					$CMTPS:	175624			;COMM OUTPUT STATUS
  1895					$CMTPB:	175626			;COMM OUTPUT BUFFER
  1896					.ENDC
  1897					
  1898					.LIF DF RPASB
  1899					RPRH11:	176700			;RH11 CONTROLLER ADDRESS
  1900					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 60
		BEG11 PAL[KL,SYS]	Page 2.1 	*BEGIN* PROGRAM CONTROL, 4-AUG-75

  1901					;PDP-10 KL10 PARAMETERS
  1902					
  1903	100056	777777			TENMO:	-1			;PDP-10 MINUS ONE
  1904	100060	777777				-1
  1905	100062	000017				17
  1906					
  1907	100064	000440			TDIAG:	$STD		;DIAGNOSTIC START ADDRESS
  1908	100066	000000				0
  1909					
  1910	100070	000441			TDDT:	$DDT		;DDT START ADDRESS
  1911	100072	000000				0
  1912					
  1913	100074	000442			TLDR:	$STL		;LOADER START ADDRESS
  1914	100076	000000				0
  1915					
  1916	100100	000443			TMON:	$STM		;MONITOR START ADDRESS
  1917	100102	000000				0
  1918					
  1919	100104	060650			EMTIMO:	25000.		;EM/DM TIMEOUT COUNT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 61
		KLDCP PAL[KL,SYS]	Page 5.2 	*BEGIN* PROGRAM CONTROL, 4-AUG-75

  1920					
  1921								;console code
  1922					.INSRT	CONS11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 62
		CONS11 PAL[KL,SYS]	Page 1 	*BEGIN* PROGRAM CONTROL, 4-AUG-75

  1923				COMMENT ⊗   VALID 00061 PAGES
  1924				C REC  PAGE   DESCRIPTION
  1925				C00001 00001
  1926				C00006 00002	.SBTTL	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75
  1927				C00008 00003	$KONSL:	TTIBRK			GET BREAK CHAR FROM LAST OPERATION
  1928				C00010 00004	$$CONSL:CLR	RPTFLG		Start here from 100014
  1929				C00013 00005	3$:	MOVB	#40,$KDCEN+1	MAKE SINGLE LETTER COMMAND
  1930				C00015 00006	.SBTTL	CONSOLE DISPATCH TABLE
  1931				C00023 00007	DISPATCH TABLE
  1932				C00028 00008	.SBTTL	DIAGNOSIC CONSOLE UTILITY COMMAND PROCESS
  1933				C00030 00009	.SBTTL	CONSOLE COMMAND REPEAT CONTROL
  1934				C00031 00010	.SBTTL	PROGRAM CONSOLE COMMAND PROCESS
  1935				C00033 00011	PROGRAM INDIRECT CCL FILE PROCESS
  1936				C00035 00012	.SBTTL	DIAGNOSTIC FUNCTIONS
  1937				C00037 00013	DIAGNOSTIC READ AND PRINT
  1938				C00038 00014	.DFDP:	DFLEGAL			FUNCTION LEGAL ?
  1939				C00039 00015	.AR:	TTICHR
  1940				C00040 00016	.BR:	TTICHR
  1941				C00042 00017	.PC:	TTICHR
  1942				C00043 00018	.VM:	DFLEGAL			FUNCTION LEGAL ?
  1943				C00044 00019	PCF COMMAND - PRINT PC FLAGS
  1944				C00047 00020	.FE:	TTITRM
  1945				C00048 00021	PRINT PRIORITY INTERRUPT FUNCTIONS
  1946				C00050 00022	PRINT ALL - C-RAM & REGISTERS
  1947				C00052 00023	.SBTTL	PDP-10 START/STOP FUNCTIONS
  1948				C00054 00024	START PDP-10 DDT
  1949				C00057 00025	PULSE THE E-BOX CLOCK
  1950				C00059 00026	EXECUTE A PDP10 INSTRUCTION.
  1951				C00060 00027		PNTCPU			PRINT C-RAM & REGISTERS
  1952				C00062 00028	SELECT CLOCK SOURCE
  1953				C00063 00029	PROCESSOR PARITY DISABLE
  1954				C00064 00030	PROCESSOR PARITY ENABLE
  1955				C00066 00031	MICRO-CODE SYNC MARK ROUTINES
  1956				C00067 00032	MICRO-CODE TIME FIELD CHANGE ROUTINE
  1957				C00068 00033	CACHE ENABLE
  1958				C00070 00034	AC BLOCK SELECTION
  1959				C00073 00035	START PDP10 AT ADDRESS SPECIFIED AS LOWER 18 BITS OF 36-BIT ARGUMENT.
  1960				C00077 00036	.SBTTL	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS
  1961				C00079 00037	MEMORY ZERO
  1962				C00081 00038	.EXM:	MOV	#.DPXAD,R5
  1963				C00083 00039	.SBTTL	CONSOLE IDLE RUN LOOP
  1964				C00086 00040	MONITOR TELETYPE CHARACTER INPUT -- MTTYIN MTTYI0 MTTYI1 C10DN1 MTTYER MTTYOC MTTYO MTTYP MTTYX MTTYC MTTYCF $MC
  1965				 MTTYS C10DN2
  1966				C00089 00041	.SBTTL	PDP-10 RUN TIME SUPPORT		TENCMD CMD10T C10DON
  1967				C00091 00042	C10DNX, TENCERR
  1968				C00093 00043	C10TO, C10TI
  1969				C00095 00044	Switch functions.  C10SW
  1970				C00098 00045	C10PRG C10PT C10P2 C10P1 C10X1 C10P3 C10P4 C10P5 C10KAS KASET
  1971				C00100 00046	Clock operations.  C10CLK
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 63
		CONS11 PAL[KL,SYS]	Page 1.1 	*BEGIN* PROGRAM CONTROL, 4-AUG-75

  1972				C00110 00047	PDP-10 SWITCH REGISTER
  1973				C00112 00048	.SBTTL	PDP-10 PROGRAM COMMAND
  1974				C00114 00049	"DIAMON" FILE READ
  1975				C00116 00050	.SBTTL	PDP-11 CONSOLE FUNCTIONS
  1976				C00117 00051	EXAMINE ELEVEN AT ADDRESS GIVEN
  1977				C00120 00052	DEPOSIT ELEVEN DATA
  1978				C00121 00053	.SBTTL	KL10 MONITOR & ACT10 COMMAND ROUTINES
  1979				C00123 00054	.IF DF MONASB
  1980				C00125 00055	SRT11X:	MOV	PGOADR,SEADR
  1981				C00127 00056	.IF DF MONASB
  1982				C00129 00057	ADRERR:	PMSG	<?ADR>
  1983				C00130 00058	.SBTTL	LINE PRINTER SELECTION ROUTINE
  1984				C00134 00059	.SBTTL	CONSOLE TELETYPE FUNCTIONS
  1985				C00135 00060	.SBTTL	KLINIK FIELD SERVICE REMOTE DIAGNOSTICS ENABLE
  1986				C00137 00061	.SBTTL	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU
  1987				C00144 ENDMK
  1988					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 64
		CONS11 PAL[KL,SYS]	Page 2 	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75

  1989					.SBTTL	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75
  1990					
  1991	100106	012737	000140	177776	CONSL:	MOV	#CPUPR,PS	;SET CPU PRIORITY.
  1992	100114	012706	157776			MOV	#STACK,SP	;RESET STACK
  1993	100120	012700	122754			MOV	#$STUF,R0	;SETUP FOR STACK UNDERFLOW
  1994	100124	010016				MOV	R0,(SP)
  1995					1$:	PUSH	R0
  1996					
  1997	100130	010637	147736			MOV	SP,$KONSP
  1998					
  1999	100134	013706	147736		KONSL:	MOV	$KONSP,SP	;RESET STACK POINTER
  2000					
  2001	100140	012737	104000	147424	.IIF NE EPTREL,	MOV	#PHYS!PRTOFF,$TADSP	;DEFAULT ADDR MODE FOR EXDEP
  2002					
  2003	100146	104217				TTPINI			;INIT TTY POINTERS
  2004					
  2005	100150	005037	147740			CLR	DDTFLG
  2006	100154	005037	147624			CLR	IFILEF
  2007	100160	005037	150722			CLR	HLPPNT
  2008	100164	005037	152214			CLR	PCMDFLG
  2009	100170	104043				PFORCE			;ALL OUTPUT TO TTY
  2010					
  2011	100172	004737	115174			JSR	PC,$CKSUM	;COMPUTE CHECKSUM OF "KLDCP"
  2012					
  2013	100176	020037	157314			CMP	R0,$ILDSUM	;DOES IT MATCH AS LOADED ?
  2014	100202	001404				BEQ	2$		;YES, OK !!!!
  2015					
  2016	100204	010037	157314			MOV	R0,$ILDSUM	;NO, ONLY REPORT CHANGES
  2017						PMSG	<?"KLDCP" CKSUM\>
  2018	100210	104025				  $PMSG
  2019	100212	144720				  $$CLIT
  2020					
  2021	100214	005737	147620		2$:	TST	JFILEF
  2022	100220	001044				BNE	$$CONSL
  2023						PMSG	<CMD:\>
  2024	100222	104025				  $PMSG
  2025	100224	144740				  $$CLIT
  2026	100226	000441				BR	$$CONSL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 65
		CONS11 PAL[KL,SYS]	Page 3 	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75

  2027	100230	104015			$KONSL:	TTIBRK			;GET BREAK CHAR FROM LAST OPERATION
  2028	100232	103454				 BCS	$KONS1		;NO DATA
  2029	100234	122700	000054			CMPB	#',,R0		;WAS LAST BREAK A COMMA ?
  2030	100240	001506				BEQ	$RPT		;BR IF YES, CONTINUE STRING PROCESS
  2031	100242	122700	000040			CMPB	#' ,R0		;WAS LAST BREAK A SPACE ?
  2032	100246	001503				BEQ	$RPT		;YES, CONTINUE STRING PROCESS
  2033	100250	122700	000011			CMPB	#TAB,R0		;WAS LAST BREAK A TAB ?
  2034	100254	001500				BEQ	$RPT		;YES, CONTINUE STRING PROCESS
  2035	100256	005700				TST	R0
  2036	100260	001411				BEQ	11$		;NULL, EOL
  2037	100262	022700	000012			CMP	#LF,R0		;IS IT LF ?
  2038	100266	001406				BEQ	11$		;YES
  2039	100270	022700	000033			CMP	#ALTMOD,R0
  2040	100274	001403				BEQ	11$		;IS IT ALTMODE ?
  2041	100276	022700	000015			CMP	#CR,R0		;IS IT A CR ?
  2042	100302	001011				BNE	2$		;NO, INVALID TERMINATION
  2043					
  2044	100304	005737	147732		11$:	TST	RPTFLG		;PRESENTLY DOING A REPEAT ?
  2045	100310	001425				BEQ	$KONS1		;BR IF NO
  2046					
  2047	100312	004737	116546			JSR	PC,$PTTYC	;CHECK OPERATOR INTERRUPT
  2048					
  2049	100316	012737	150502	150716	1$:	MOV	#$INBUF+2,$INPTC	;REPEAT, REDO COMMAND
  2050	100324	000454				BR	$RPT
  2051					
  2052	100326	000137	100574		2$:	JMP	$CMDER
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 66
		CONS11 PAL[KL,SYS]	Page 4 	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75

  2053	100332	005037	147732		$$CONSL:CLR	RPTFLG		;Start here from 100014
  2054	100336	005037	151124			CLR	DVDIRF		;CLEAR DEVICE DIRECTORY FLAG
  2055					
  2056									;IN CASE OF START AT 100000+X FROM CONSOLE
  2057					.IF DF TELASB
  2058	100342	032777	000004	777460		BIT #DLRTS,@$FSTKS
  2059	100350	001002				BNE 1$			;RTS STILL SET, ASSUME OK
  2060	100352	004737	114040			JSR PC,HANGU1		;RTS OFF, MUST HAVE BEEN RANDOM INIT, SO HANGUP
  2061					1$:
  2062					.ENDC ;DF TELASB
  2063					.LIF DF SAILVR
  2064	100356	052737	000100	177546		BIS #100,KWLKS		;SET CLOCK INTERRUPT ENABLE
  2065					
  2066	100364	005737	152214		$KONS1:	TST	PCMDFLG		;DOING PROGRAM COMMAND ?
  2067	100370	001402				BEQ	1$		;NO
  2068	100372	000137	101526			JMP	PCMDE		;YES, RETURN TO PROGRAM
  2069	100376	005737	147624		1$:	TST	IFILEF		;PROCESSING INDIRECT FILE ?
  2070	100402	001402				BEQ	2$		;NO
  2071	100404	000137	101666			JMP	IFILIN		;YES, GET CHARS FROM STORAGE
  2072	100410	005737	147620		2$:	TST	JFILEF		;DOING DOUBLE INDIRECT ?
  2073	100414	100002				BPL	$KONS2		;NO
  2074	100416	000137	101730			JMP	JFILIN		;YES, GET CHARS FROM STORAGE
  2075	100422	010637	147736		$KONS2:	MOV	SP,$KONSP	;SAVE STACK POINTER
  2076	100426	104043			1$:	PFORCE
  2077	100430	104214				PNTCI
  2078	100432	000076				'>
  2079						PMSG	<. ←>
  2080	100434	104025				  $PMSG
  2081	100436	144746				  $$CLIT
  2082	100440	104003			2$:	RUNLP			;RUN LOOP &/OR READ IN A TTY LINE
  2083	100442	103005				 BCC	$RPT		;RESPONSE, GO PROCESS
  2084	100444	022737	150500	150720		CMP	#$INBUF,$INPTR	;ANYTHING BEEN TYPED ?
  2085	100452	001365				BNE	1$		;YES, REPROMPT
  2086	100454	000771				BR	2$
  2087					
  2088	100456	005037	147734		$RPT:	CLR	ALLFLG		;CLEAR ALL PRINT FLAG
  2089	100462	104016				TTISDL			;READ ONE CHARACTER
  2090	100464	103043				 BCC	$CMDER		;...NUMBER, ILLEGAL
  2091	100466	122700	000073		1$:	CMPB	#';,R0
  2092	100472	001717				BEQ	$$CONSL		;SEMICOLON, LOCAL COPY ONLY
  2093	100474	122700	000056			CMPB	#'.,R0
  2094	100500	001766				BEQ	$RPT		;DOT, IGNORE
  2095	100502	110037	101140			MOVB	R0,$KDCEN	;PLACE IN END OF DECODER
  2096					
  2097	100506	104005				TTICHR			;READ SECOND CHARACTER
  2098	100510	103725				 BCS	$KONS1		;EVEN 1 CHAR CMDS ARE 2 CHAR MIN.
  2099	100512	122700	000012			CMPB	#12,R0		;IF THIS CHAR IS A LINE FEED
  2100	100516	001722				BEQ	$KONS1		;..1ST CHAR MUST HAVE BEEN CR, IGNORE
  2101	100520	122700	000015			CMPB	#15,R0		;IF THIS CHAR A CR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 67
		CONS11 PAL[KL,SYS]	Page 4.1 	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75

  2102	100524	001417				BEQ	3$		;THIS IS A SINGLE LETTER COMMAND
  2103	100526	122700	000033			CMPB	#33,R0		;IF ALTMODE
  2104	100532	001414				BEQ	3$		;       DITTO
  2105	100534	110037	101141			MOVB	R0,$KDCEN+1	;PLACE SECOND IN END OF DECODER
  2106					
  2107					;THE COMMAND PORTION OF THE INPUT STRING IS READY TO BE DECODED
  2108					
  2109	100540	013700	101140		4$:	MOV	$KDCEN,R0	;COMMAND TO R0
  2110	100544	012701	100674			MOV	#$KDCRE,R1	;ADDRESS OF LIST TO R1
  2111					
  2112	100550	020021			2$:	CMP	R0,(R1)+	;TEST FOR COMMAND
  2113	100552	001376				BNE	2$		;NOT FOUND YET
  2114	100554	005037	101140			CLR	$KDCEN
  2115					.LIF DF MONASB
  2116						CLR	ENQFLG
  2117	100560	000171	000244			JMP	@$DISPH-$KDCRE-2(R1)	;EXIT TO SELECTED SUBROUTINE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 68
		CONS11 PAL[KL,SYS]	Page 5 	CONSOLE PACKAGE FOR KL10/11 INTERFACE, 9-SEPT-75

  2118	100564	112737	000040	101141	3$:	MOVB	#40,$KDCEN+1	;MAKE SINGLE LETTER COMMAND
  2119	100572	000762				BR	4$		;LETTER & SPACE FOR LOOKUP
  2120					
  2121	100574	104214			$CMDER:	PNTCI
  2122	100576	000077				'?
  2123	100600	000411				BR	$$$CC
  2124					
  2125	100602	005037	151120		$$CNTLC:CLR	DIAFLG
  2126	100606	105037	147670			CLRB	TENRUN		;CLEAR PDP-10 RUNNING FLAG
  2127	100612	005737	152214			TST	PCMDFLG		;DOING PROGRAM COMMAND ?
  2128	100616	001002				BNE	$$$CC		;YES
  2129	100620	005037	147614			CLR	PRGRUN		;CLEAR PROGRAM RUNNING FLAG
  2130	100624	104055			$$$CC:	SETFLG
  2131	100626	147764				  $TTLKF
  2132	100630	005737	157310			TST	DEVTYP		;IN ACT10 MODE ?
  2133	100634	100000				BPL	1$		;NO
  2134					.IF DF MONASB
  2135						TST	ENQFLG		;DOING APT10 COMMAND ?
  2136						BEQ	1$		;NO
  2137						COMCLR			;ACT10, CLEAR COMM, THEN TO CONSL
  2138					.ENDC
  2139					1$:	PUSH	$FORCE		;SAVE FORCED PRINTING FLAG
  2140	100642	104043				PFORCE
  2141	100644	104031				PCRLF			;FORCE PRINT ERROR
  2142						POP	$FORCE		;RESTORE
  2143					
  2144	100652	005737	152214			TST	PCMDFLG		;DOING PROGRAM COMMAND ?
  2145	100656	001402				BEQ	2$		;NO
  2146	100660	000137	101546			JMP	PCMDE1		;YES, TAKE ERROR RETURN
  2147					
  2148	100664	005037	147620		2$:	CLR	JFILEF		;CLEAR DOUBLE INDIRECT FLAG
  2149	100670	000137	100134			JMP	KONSL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 69
		CONS11 PAL[KL,SYS]	Page 6 	CONSOLE DISPATCH TABLE

  2150					.SBTTL	CONSOLE DISPATCH TABLE
  2151					
  2152	100674	   122		
  2153	100675	   040		
  2154					$KDCRE:	.ASCII	/R /		;REPEAT OPERATOR
  2155	100676	   106		
  2156	100677	   130		
  2157						.ASCII	/FX/		;DIAGNOSTIC FUNCTION EXECUTE
  2158	100700	   106		
  2159	100701	   127		
  2160						.ASCII	/FW/		;DIAGNOSTIC FUNCTION WRITE
  2161	100702	   106		
  2162	100703	   122		
  2163						.ASCII	/FR/		;DIAGNOSTIC FUNCTION READ
  2164	100704	   106		
  2165	100705	   123		
  2166						.ASCII	/FS/		;DIAGNOSTIC FUNCTION SYNC
  2167	100706	   104		
  2168	100707	   101		
  2169						.ASCII	/DA/		;DIAGNOSTIC DEPOSIT INTO AR
  2170	100710	   105		
  2171	100711	   130		
  2172						.ASCII	/EX/		;PDP-10 INSTRUCTION EXECUTE
  2173	100712	   115		
  2174	100713	   122		
  2175						.ASCII	/MR/		;MASTER RESET
  2176					
  2177					;PDP-10 EXAMINE/DEPOSIT FUNCTIONS
  2178					
  2179	100714	   105		
  2180	100715	   115		
  2181						.ASCII	/EM/		;EXAMINE 10 AT ADR AND PRINT
  2182	100716	   104		
  2183	100717	   115		
  2184						.ASCII	/DM/		;DEPOSIT DATA IN 10 ADDRESS
  2185	100720	   105		
  2186	100721	   116		
  2187						.ASCII	/EN/		;EXAMINE AND PRINT NEXT 10 ADDRESSES
  2188	100722	   104		
  2189	100723	   116		
  2190						.ASCII	/DN/		;DEPOSIT DATA INTO NEXT 10 ADDRESSES
  2191	100724	   115		
  2192	100725	   132		
  2193						.ASCII	/MZ/		;MEMORY ZERO
  2194					
  2195					;START/STOP FUNCTIONS
  2196					
  2197	100726	   123		
  2198	100727	   120		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 70
		CONS11 PAL[KL,SYS]	Page 6.1 	CONSOLE DISPATCH TABLE

  2199						.ASCII	/SP/		;STOP 10, CLEAR RUN FLOP
  2200	100730	   122		
  2201	100731	   116		
  2202						.ASCII	/RN/		;START 10, SET RUN FLOP
  2203	100732	   123		
  2204	100733	   111		
  2205						.ASCII	/SI/		;SINGLE INSTRUCTION,PUSH CONTINUE
  2206	100734	   120		
  2207	100735	   114		
  2208						.ASCII	/PL/		;PULSE CLOCK
  2209	100736	   102		
  2210	100737	   125		
  2211						.ASCII	/BU/		;BURST CLOCK
  2212	100740	   123		
  2213	100741	   115		
  2214						.ASCII	/SM/		;START MICRO CODE,SUPPORT EXAMINE/DEPOSIT
  2215	100742	   123		
  2216	100743	   124		
  2217						.ASCII	/ST/		;START AT 10 ADDRESS
  2218	100744	   123		
  2219	100745	   127		
  2220						.ASCII	/SW/		;PDP-10 SWITCHES
  2221	100746	   101		
  2222	100747	   103		
  2223						.ASCII	/AC/		;"AC BLK" SELECTION
  2224	100750	   115		
  2225	100751	   103		
  2226						.ASCII	/MC/		;PDP-10 MONITOR CONTINUE
  2227					.LIF DF %%EOP
  2228						.ASCII	/EP/		;SET EOP INTERVAL
  2229					
  2230					;PDP-11 FUNCTIONS
  2231					
  2232	100752	   123		
  2233	100753	   105		
  2234						.ASCII	/SE/		;START 11 AT ADR
  2235	100754	   105		
  2236	100755	   105		
  2237						.ASCII	/EE/		;EXAMINE 11 AT ADR AND PRINT
  2238	100756	   104		
  2239	100757	   105		
  2240						.ASCII	/DE/		;DEPOSIT DATA IN 11 ADDRESS
  2241	100760	   105		
  2242	100761	   102		
  2243						.ASCII	/EB/		;EXAMINE 11 BYTE
  2244	100762	   104		
  2245	100763	   102		
  2246						.ASCII	/DB/		;DEPOSIT 11 BYTE
  2247	100764	   132		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 71
		CONS11 PAL[KL,SYS]	Page 6.2 	CONSOLE DISPATCH TABLE

  2248	100765	   105		
  2249						.ASCII	/ZE/		;ZERO ELEVEN
  2250					
  2251					;RAM FUNCTIONS
  2252					
  2253	100766	   105		
  2254	100767	   103		
  2255						.ASCII	/EC/		;EXAMINE C-RAM AT ADDRESS AND PRINT
  2256	100770	   104		
  2257	100771	   103		
  2258						.ASCII	/DC/		;DEPOSIT DATA INTO C-RAM ADDRESS
  2259	100772	   122		
  2260	100773	   103		
  2261						.ASCII	/RC/		;READ C-RAM, FR'S 140-141-142-143
  2262	100774	   105		
  2263	100775	   104		
  2264						.ASCII	/ED/		;EXAMINE D-RAM AT ADDRESS AND PRINT
  2265	100776	   104		
  2266	100777	   104		
  2267						.ASCII	/DD/		;[START DDT] OR DEPOSIT D-RAM
  2268	101000	   115		
  2269	101001	   115		
  2270						.ASCII	/MM/		;MICRO-CODE SYNC MARK
  2271	101002	   115		
  2272	101003	   125		
  2273						.ASCII	/MU/		;MICRO-CODE SYNC UNMARK
  2274	101004	   115		
  2275	101005	   124		
  2276						.ASCII	/MT/		;MICRO-CODE TIME CHANGE
  2277					
  2278					;CLOCK OPERATIONS
  2279					
  2280	101006	   103		
  2281	101007	   123		
  2282						.ASCII	/CS/		;CLOCK SOURCE
  2283	101010	   103		
  2284	101011	   122		
  2285						.ASCII	/CR/		;CLOCK RATE
  2286					
  2287					;PROCESSOR PARITY FUNCTIONS
  2288					
  2289	101012	   120		
  2290	101013	   104		
  2291						.ASCII	/PD/		;DISABLE PARITY STOP
  2292	101014	   120		
  2293	101015	   105		
  2294						.ASCII	/PE/		;ENABLE PARITY STOP
  2295					
  2296					;INTERNAL E-BOX REGISTER READ FUNCTIONS
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 72
		CONS11 PAL[KL,SYS]	Page 6.3 	CONSOLE DISPATCH TABLE

  2297					
  2298	101016	   101		
  2299	101017	   122		
  2300						.ASCII	/AR/		;READ & PRINT AR REGISTER
  2301	101020	   102		
  2302	101021	   122		
  2303						.ASCII	/BR/		;READ & PRINT BR REGISTER
  2304	101022	   115		
  2305	101023	   121		
  2306						.ASCII	/MQ/		;READ & PRINT MQ REGISTER
  2307	101024	   106		
  2308	101025	   115		
  2309						.ASCII	/FM/		;READ & PRINT FM REGISTER
  2310	101026	   101		
  2311	101027	   104		
  2312						.ASCII	/AD/		;READ & PRINT ADDER
  2313	101030	   120		
  2314	101031	   103		
  2315						.ASCII	/PC/		;READ & PRINT PC
  2316	101032	   126		
  2317	101033	   115		
  2318						.ASCII	/VM/		;READ & PRINT VMA
  2319	101034	   123		
  2320	101035	   103		
  2321						.ASCII	/SC/		;READ & PRINT SC REGISTER
  2322	101036	   106		
  2323	101037	   105		
  2324						.ASCII	/FE/		;READ & PRINT FE REGISTER
  2325	101040	   105		
  2326	101041	   122		
  2327						.ASCII	/ER/		;READ & PRINT E-BUS REGISTER
  2328	101042	   120		
  2329	101043	   111		
  2330						.ASCII	/PI/		;READ & PRINT PI SYSTEM
  2331	101044	   101		
  2332	101045	   114		
  2333						.ASCII	/AL/		;PRINT ALL, C-RAM & REGISTERS
  2334					
  2335					;CACHE OPERATIONS
  2336					
  2337	101046	   103		
  2338	101047	   105		
  2339						.ASCII	/CE/		;CACHE ENABLE
  2340	101050	   103		
  2341	101051	   111		
  2342						.ASCII	/CI/		;CACHE INVALIDATE
  2343	101052	   103		
  2344	101053	   106		
  2345						.ASCII	/CF/		;CACHE FLUSH
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 73
		CONS11 PAL[KL,SYS]	Page 6.4 	CONSOLE DISPATCH TABLE

  2346					
  2347					;REPEAT CONTROL
  2348					
  2349	101054	   122		
  2350	101055	   120		
  2351						.ASCII	/RP/		;REPEAT & PRINT OR RP04 SELECT
  2352	101056	   124		
  2353	101057	   104		
  2354						.ASCII	/TD/		;TIME DELAY
  2355					
  2356					;CONSOLE (TTY) CONTROL FUNCTION
  2357					
  2358	101060	   124		
  2359	101061	   120		
  2360						.ASCII	/TP/		;SET TTY PAGE LENGTH
  2361	101062	   124		
  2362	101063	   127		
  2363						.ASCII	/TW/		;SET TTY PAGE WIDTH
  2364	101064	   124		
  2365	101065	   106		
  2366						.ASCII	/TF/		;SET TTY FILL COUNT
  2367					
  2368					.LIF DF UTLASB
  2369						.ASCII	/TT/		;SWITCH TO REMOTE TELETYPE OPERATION
  2370					
  2371					.LIF DF LPASB
  2372						.ASCII	/LP/		;LINE PRINTER SELECTION
  2373					
  2374					.IF NDF TELASB
  2375						.ASCII	/KL/		;KLINIK SELECTION
  2376					.IFF
  2377	101066	   110		
  2378	101067	   125		
  2379						.ASCII /HU/		;HANGUP
  2380					.ENDC
  2381					
  2382					;KL10 MONITOR (PROGRAM & ACT10) COMMANDS
  2383					
  2384					.IF DF MONASB
  2385						.ASCII	/B /		;BOOT
  2386						.ASCII	/LI/		;LOGIN
  2387					.ENDC
  2388	101070	   110		
  2389	101071	   040		
  2390						.ASCII	/H /		;HELP
  2391	101072	   120		
  2392	101073	   040		
  2393						.ASCII	/P /		;PROGRAM
  2394	101074	   114		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 74
		CONS11 PAL[KL,SYS]	Page 6.5 	CONSOLE DISPATCH TABLE

  2395	101075	   124		
  2396						.ASCII	/LT/		;LOAD TEN
  2397	101076	   114		
  2398	101077	   105		
  2399						.ASCII	/LE/		;LOAD ELEVEN
  2400	101100	   114		
  2401	101101	   122		
  2402						.ASCII	/LR/		;LOAD RAM
  2403	101102	   114		
  2404	101103	   102		
  2405						.ASCII	/LB/		;LOAD ELEVEN BINARY
  2406					
  2407					.LIF DF BOOASB
  2408	101104	   114		
  2409	101105	   104		
  2410						.ASCII	/LD/		;LOAD DSKDMP BOOTSTRAP LOADER
  2411					
  2412	101106	   126		
  2413	101107	   040		
  2414						.ASCII	/V /		;VERFIY PROGRAM
  2415	101110	   103		
  2416	101111	   040		
  2417						.ASCII	/C /		;COMMENT/CORRECTIVE ACTION
  2418					.IF DF MONASB
  2419						.ASCII	/S /		;SCRIPT
  2420						.ASCII	/M /		;MASTER SCRIPT
  2421						.ASCII	/LO/		;LOGOUT
  2422						.ASCII	/GS/		;GENERATE SCRIPT
  2423					.ENDC
  2424	101112	   107		
  2425	101113	   117		
  2426						.ASCII	/GO/		;GO START PROGRAM
  2427					;;;;	.ASCII	/CD/		;PDP-11 CORE DUMP
  2428					
  2429					.IF DF RPASB
  2430					.IF DF UTLASB
  2431						.ASCII	/TA/		;ACT10 TO RP04 TRANSFER
  2432						.ASCII	/WF/		;DECTAPE TO RP04 WRITE
  2433					.ENDC
  2434						.ASCII	/RE/		;'RENM' RENAME RP04 FILE
  2435					.ENDC
  2436					
  2437					.IF DF MONASB
  2438						.ASCII	/T /		;TIME
  2439						.ASCII	/BT/		;BOOT TEN
  2440						.ASCII	/AT/		;SWITCH TO ACT10 MODE
  2441					.ENDC
  2442					
  2443	101114	   104		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 75
		CONS11 PAL[KL,SYS]	Page 6.6 	CONSOLE DISPATCH TABLE

  2444	101115	   124		
  2445						.ASCII	/DT/		;SWITCH TO DECTAPE MODE, SELECT UNIT
  2446					
  2447					.LIF DF RXASB
  2448						.ASCII	/RX/		;SWITCH TO FLOPPY MODE, SELECT UNIT
  2449					
  2450	101116	   104		
  2451	101117	   111		
  2452						.ASCII	/DI/		;DIRECTORY, DECTAPE/RP04/FLOPPY
  2453					
  2454					.IF DF BPTASB
  2455						.ASCII	/BP/		;BREAKPOINT TRAP LAYER
  2456						.ASCII	/BC/		;BREAKPOINT CONTINUE
  2457						.ASCII	/RG/		;TYPE OUT BREAK STUFF
  2458						.ASCII	/RB/		;REMOVE BREAKPOINTS
  2459					.ENDC
  2460					
  2461	101120	   110		
  2462	101121	   103		
  2463						.ASCII	/HC/		;ERROR HALT CONTINUE
  2464					
  2465	101122	   122		
  2466	101123	   111		
  2467						.ASCII	/RI/		;REINITIALIZE SYSTEM
  2468					
  2469	101124	   111		
  2470	101125	   040		
  2471						.ASCII	/I /		;INDIRECT COMMAND FILE PROCESS
  2472	101126	   112		
  2473	101127	   040		
  2474						.ASCII	/J /		;DOUBLE INDIRECT COMMAND FILE
  2475	101130	   112		
  2476	101131	   103		
  2477						.ASCII	/JC/		;"J" FILE CONTINUE
  2478					
  2479					.LIF DF BOOASB
  2480	101132	   104		
  2481	101133	   123		
  2482						.ASCII	/DS/		;LOAD DSKDMP BOOTSTRAP INTO 10 MEM AND START
  2483	101134	   126		
  2484	101135	   102		
  2485						.ASCII  /VB/		;COMPLEMENT VERBOSE FLAG
  2486	101136	   113		
  2487	101137	   101		
  2488						.ASCII	/KA/		;ENABLE KASIM
  2489					
  2490	101140	000000			$KDCEN:	0			;ERROR TRAP FOR NONEXISTANT COMMANDS
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 76
		CONS11 PAL[KL,SYS]	Page 7 	CONSOLE DISPATCH TABLE

  2491					;DISPATCH TABLE
  2492					
  2493	101142	101410			$DISPH:	.RPT			;REPEAT OPERATION
  2494	101144	102014				.DFXCT			;DIAGNOSTIC FUNCTION EXECUTE
  2495	101146	102032				.DFWRT			;   "         "      WRITE
  2496	101150	102112				.DFRD			;   "         "      READ
  2497	101152	102070				.FS			;   "         "      SYNC
  2498	101154	102610				.DA			;   "       DEPOSIT INTO AR
  2499	101156	104432				.XCT			;EXECUTE 10 INSTRUCTION
  2500	101160	102602				.MRESET			;MASTER RESET
  2501	101162	106622				.EXM			;EXAMINE 10
  2502	101164	106276				.DP			;DEPOSIT 10
  2503	101166	107004				.EXMNX			;EXAMINE NEXT 10
  2504	101170	106346				.DPNX			;DEPOSIT NEXT 10
  2505	101172	106450				.MZ			;MEMORY ZERO
  2506	101174	103750				$SP			;STOP 10
  2507	101176	104000				$RN			;RUN 10
  2508	101200	104220				$SI			;SINGLE INSTRUCT 10
  2509	101202	104320				.PL			;PULSE 10
  2510	101204	104602				.BU			;BURST CLOCK
  2511	101206	104364				.SM			;START MACHINE
  2512	101210	105776				$ST			;START 10
  2513	101212	110300				$SW			;SWITCHES 10
  2514	101214	105544				.AC			;"AC BLK" SELECTION
  2515	101216	107364				$MC			;MONITOR CONTINUE
  2516					.LIF DF %%EOP
  2517						.EP			;SET EOP INTERVAL
  2518	101220	112402				.SE			;START ELEVEN
  2519	101222	112450				.EE			;EXAMINE ELEVEN
  2520	101224	112652				.DE			;DEPOSIT ELEVEN
  2521	101226	112456				.EB			;EXAMINE 11 BYTE
  2522	101230	112660				.DB			;DEPOSIT 11 BYTE
  2523	101232	112632				.ZE			;ZERO ELEVEN
  2524	101234	126244				$EC			;EXAMINE C←RAM
  2525	101236	127736				$DC			;DEPOSIT C-RAM
  2526	101240	126660				$RC			;READ C-RAM
  2527	101242	127474				$ED			;EXAMINE D←RAM
  2528	101244	104112				$DDTX			;[START DDT] OR DEPOSIT D←RAM
  2529	101246	105240				.MM			;MICRO-CODE MARK
  2530	101250	105232				.MU			;MICRO-CODE UNMARK
  2531	101252	105312				.MT			;MICRO-CODE TIME CHANGE
  2532	101254	104632				.CS			;SELECT CLOCK SOURCE
  2533	101256	104742				.CR			;SELECT CLOCK RATE
  2534	101260	104774				.PD			;PROCESSOR PARITY DISABLE
  2535	101262	105102				.PE			;PROCESSOR PARITY ENABLE
  2536	101264	102400				.AR			;READ REGISTERS
  2537	101266	102512				.BR
  2538	101270	102304				.MQ
  2539	101272	102320				.FM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 77
		CONS11 PAL[KL,SYS]	Page 7.1 	CONSOLE DISPATCH TABLE

  2540	101274	102442				.AD
  2541	101276	102626				.PC
  2542	101300	102732				.VM
  2543	101302	103316				.SC
  2544	101304	103302				.FE
  2545	101306	102554				.ERG
  2546	101310	103414				.PI			;READ & PRINT PI SYSTEM
  2547	101312	103550				.ALL			;PRINT ALL
  2548	101314	105400				.CE			;CACHE ENABLE
  2549	101316	104374				.CI			;CACHE INVALIDATE
  2550	101320	104412				.CF			;CACHE FLUSH
  2551	101322	101422				.RPTP			;REPEAT & PRINT
  2552	101324	122600				.TD			;TIME DELAY
  2553	101326	113404				$TP			;SET TTY PAGE LENGTH
  2554	101330	113412				$TW			;SET TTY PAGE WIDTH
  2555	101332	113434				$TF			;SET TTY FILL PARAMETER
  2556					.LIF DF UTLASB
  2557						$TT			;SWITCH TO REMOTE TTY
  2558					
  2559					.LIF DF LPASB
  2560						$LPT			;LINE PRINTER SELECTION
  2561					
  2562					.IF NDF TELASB
  2563						.KLINIK			;KLINIK SELECTION
  2564					.IFF
  2565	101334	114500				$HU			;HANG UP
  2566					.ENDC
  2567					
  2568					;KL10 MONITOR (PROGRAM & ACT10) COMMANDS
  2569					
  2570					.IF DF MONASB
  2571						$BOOT			;BOOT SYSTEM
  2572						$LOGIN			;LOG IN
  2573					.ENDC
  2574	101336	113132				$HELP			;HELP
  2575	101340	113036				$PROG			;LOAD PROGRAM
  2576	101342	112766				$LDT			;LOAD TEN
  2577	101344	112776				$LDE			;LOAD ELEVEN
  2578	101346	113006				$LDR			;LOAD RAM
  2579	101350	113016				$LDB			;LOAD ELEVEN BINARY
  2580					
  2581					.LIF DF BOOASB
  2582	101352	113026				$LDD			;LOAD DSKDMP BOOT
  2583					
  2584	101354	112752				$VERIFY			;VERIFY PROGRAM
  2585	101356	113344				$COMNT			;COMMENT
  2586					.IF DF MONASB
  2587						$SCRPT			;SCRIPT REQUEST
  2588						$MSCP			;MASTER SCRIPT REQUEST
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 78
		CONS11 PAL[KL,SYS]	Page 7.2 	CONSOLE DISPATCH TABLE

  2589						$LOGO			;LOG OUT
  2590						$GSCP			;GENERATE SCRIPT
  2591					.ENDC
  2592	101360	113212				$GO			;PROGRAM GO
  2593					;;;;	$CD			;PDP-11 CORE DUMP
  2594					
  2595					.IF DF RPASB
  2596					.IF DF UTLASB
  2597						$TA			;ACT10 TO RP04 TRANSFER
  2598						$WF			;DECTAPE TO RP04 WRITE FILE
  2599					.ENDC
  2600						$RE			;'RENM' RP04 RENAME FILE
  2601					.ENDC
  2602					
  2603					.IF DF MONASB
  2604						$TIME			;TIME
  2605						$BOOTT			;BOOT PDP-10
  2606						$AT			;SELECT ACT-10 MODE
  2607					.ENDC
  2608	101362	113150				$DT			;SELECT DECTAPE MODE & UNIT
  2609					
  2610					.LIF DF RXASB
  2611						$RX			;SELECT FLOPPY MODE & UNIT
  2612					
  2613	101364	133726				$DI			;DIRECTORY, DECTAPE/RP04/FLOPPY
  2614					
  2615					.IF DF BPTASB
  2616						.BP			;BREAKPOINT INSERTION
  2617						.BC			;BREAKPOINT CONTINUE
  2618						.RG			;PRINT SAVED REGISTERS
  2619						.RB			;REMOVE BREAKPOINTS
  2620					.ENDC
  2621					
  2622	101366	115466				.HC			;HALT CONTINUE
  2623	101370	113374				.RI			;REINITIALIZE CONSOLE
  2624	101372	113104				$IFILE			;INDIRECT FILE
  2625	101374	113064				$JFILE			;DOUBLE INDIRECT FILE
  2626	101376	113232				$JC			;J FILE CONTINUE
  2627					
  2628					.LIF DF BOOASB
  2629	101400	135474				$DS			;LOAD AND START DSKDMP BOOTSTRAP PROGRAM
  2630	101402	106404				$VB			;COMPLEMENT VERBOSE TYPEOUT
  2631	101404	106440				$KA			;ENABLE KASIM
  2632					
  2633	101406	100574				$CMDER			;NO SUCH COMMAND
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 79
		CONS11 PAL[KL,SYS]	Page 8 	DIAGNOSIC CONSOLE UTILITY COMMAND PROCESS

  2634					.SBTTL	DIAGNOSIC CONSOLE UTILITY COMMAND PROCESS
  2635					
  2636					.IF DF UTLASB
  2637					
  2638					;UTILITY PROGRAM CHECK
  2639					
  2640					$KLUCK:	CMP	PID,PIDU	;UTILITY PROGRAM IN CORE ?
  2641						BNE	1$
  2642						CMP	PID+2,PIDU+2
  2643						BNE	1$
  2644						CMP	PDVER,#DECVER	;PROPER VERSION ?
  2645						BNE	1$
  2646						RTS	PC		;OK
  2647					
  2648					1$:	PMSG	<PLEASE LOAD "KLDCPU.A11" FIRST>
  2649						JMP	$CNTLC
  2650					
  2651					PIDU:	.RAD50	/KLDCPU/
  2652					
  2653					;TRANSFER FROM APT10 DISPATCH
  2654					
  2655					$TA:	JSR	PC,$KLUCK	;UTILITY IN CORE ?
  2656						JMP	@TAPT		;YES
  2657					
  2658					;WRITE FILE FROM DTA/FLOPPY DISPATCH
  2659					
  2660					$WF:	JSR	PC,$KLUCK	;UTILITY IN CORE ?
  2661						JMP	@WFILE		;YES
  2662					
  2663					;REMOTE TELETYPE COMMUNICATIONS DISPATCH
  2664					
  2665					$TT:	JSR	PC,$KLUCK	;UTILITY IN CORE ?
  2666						JMP	@REMOTE		;YES
  2667					
  2668					;RP04 DISK DIRECTORY DISPATCH
  2669					
  2670					.IF DR RPASB
  2671					$RPDIR:	JSR	PC,$KLUCK	;UTILITY IN CORE ?
  2672						JMP	@DSKDIR		;YES
  2673					.ENDC
  2674					
  2675					.ENDC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 80
		CONS11 PAL[KL,SYS]	Page 9 	CONSOLE COMMAND REPEAT CONTROL

  2676					.SBTTL	CONSOLE COMMAND REPEAT CONTROL
  2677					
  2678	101410	104055			.RPT:	SETFLG
  2679	101412	147732				  RPTFLG		;SET REPEAT FLAG
  2680					
  2681	101414	104044			.RPTX:	PNORML
  2682	101416	000137	100456			JMP	$RPT
  2683					
  2684	101422	104016			.RPTP:	TTISDL
  2685	101424	103005				 BCC	1$		;NUMBER
  2686	101426	104144				TTBACK
  2687	101430	012737	177400	147732		MOV	#177400,RPTFLG	;SET REPEAT & PRINT
  2688	101436	000766				BR	.RPTX
  2689					
  2690	101440	000137	100574		1$:	JMP	$RP		;MUST BE RP04 SELECTION
  2691					
  2692		100574			.IIF NDF RPASB,$RP==$CMDER
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 81
		CONS11 PAL[KL,SYS]	Page 10 	PROGRAM CONSOLE COMMAND PROCESS

  2693					.SBTTL	PROGRAM CONSOLE COMMAND PROCESS
  2694					
  2695	101444	104055			$PRGNPT:SETFLG			;PROGRAM COMMAND, NO PRINT
  2696	101446	152212				  PCMDNF
  2697	101450	000402				BR	$PRGXX
  2698	101452	005037	152212		$PRGCMD:CLR	PCMDNF
  2699	101456	104055			$PRGXX:	SETFLG
  2700	101460	152214				  PCMDFLG		;SET PROGRAM COMMAND FLAG
  2701	101462	005700				TST	R0
  2702	101464	001411				BEQ	2$		;USE CURRENT INPUT BUFFER, R0=0
  2703	101466	022700	777777			CMP	#-1,R0
  2704	101472	001004				BNE	3$
  2705	101474	012700	150254			MOV	#$OUTBF,R0	;USE OUTPUT BUFFER, R0 = -1
  2706	101500	010037	150474			MOV	R0,$OUTPT
  2707	101504	004737	101606		3$:	JSR	PC,$PCMDX	;TRANSFER COMMAND TO INPUT BUFFER
  2708	101510	012737	150500	150716	2$:	MOV	#$INBUF,$INPTC	;SET PICKUP POINTER
  2709	101516	010637	147630			MOV	SP,$$SVSP	;SAVE STACK POINTER
  2710	101522	000137	100456			JMP	$RPT		;PROCESS COMMAND
  2711					
  2712	101526	013706	147630		PCMDE:	MOV	$$SVSP,SP	;RESTORE STACK POINTER
  2713	101532	005037	152214			CLR	PCMDFLG
  2714	101536	005037	152212			CLR	PCMDNF
  2715					.LIF DF MONASB
  2716						CLR	ENQFLG
  2717						EXIT
  2718	101542	000137	124064			  JMP	$EXIT
  2719	101546	013706	147630		PCMDE1:	MOV	$$SVSP,SP
  2720	101552	005037	152214		PCMDE3:	CLR	PCMDFLG		;ERROR, C-BIT SET RETURN
  2721	101556	005037	152212			CLR	PCMDNF
  2722	101562	005037	150722			CLR	HLPPNT
  2723						EXITERR
  2724	101566	000137	124036			  JMP	$EXITE
  2725	101572	013706	147630		PCMDE2:	MOV	$$SVSP,SP
  2726	101576	052766	000010	000014		BIS	#NBIT,14(SP)	;CONTROL C DURING TYPEOUT
  2727	101604	000762				BR	PCMDE3		;NBIT & CBIT SET RETURN
  2728					
  2729	101606	012701	150500		$PCMDX:	MOV	#$INBUF,R1	;MOVE COMMAND TO INPUT BUFFER
  2730		101612			$DIASX=.
  2731	101612	112021			1$:	MOVB	(R0)+,(R1)+	;TRANSFER CHARS
  2732	101614	001376				BNE	1$		;TILL NULL
  2733	101616	005301				DEC	R1
  2734	101620	112721	000015			MOVB	#CR,(R1)+
  2735	101624	112721	000012			MOVB	#LF,(R1)+
  2736	101630	010137	150720			MOV	R1,$INPTR	;SAVE EOL POINTER
  2737	101634	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 82
		CONS11 PAL[KL,SYS]	Page 11 	PROGRAM CONSOLE COMMAND PROCESS

  2738					;PROGRAM INDIRECT CCL FILE PROCESS
  2739					
  2740	101636	013701	147622		$TTICCL:MOV	IFINP,R1	;XFER CHARS INTO INPUT BUFFER
  2741	101642	105711				TSTB	(R1)		;FIRST CHAR A NULL ?
  2742	101644	001406				BEQ	1$		;YES, FINISHED
  2743	101646	004737	101772			JSR	PC,IJFILX
  2744	101652	010137	147622			MOV	R1,IFINP	;RESAVE POINTER
  2745						EXIT
  2746	101656	000137	124064			  JMP	$EXIT
  2747					1$:	EXITERR			;FINISHED, C-BIT SET RETURN
  2748	101662	000137	124036			  JMP	$EXITE
  2749					
  2750					;INDIRECT COMMAND FILE PROCESS
  2751					
  2752	101666	013701	147622		IFILIN:	MOV	IFINP,R1	;XFER CHARS INTO INPUT BUFFER
  2753	101672	105711				TSTB	(R1)		;FIRST CHAR A NULL ?
  2754	101674	001413				BEQ	IFILX1		;YES, FINISHED
  2755	101676	004737	101772			JSR	PC,IJFILX
  2756	101702	010137	147622			MOV	R1,IFINP	;RESAVE STORAGE POINTER
  2757	101706	005737	147620			TST	JFILEF		;DON'T PRINT "I" IF UNDER "J"
  2758	101712	001002				BNE	3$
  2759		101714			IFILX=.
  2760	101714	104025				$PMSG			;PRINT COMMAND LINE
  2761	101716	150500				$INBUF
  2762	101720	000137	100456		3$:	JMP	$RPT		;GO PROCESS
  2763					
  2764	101724	000137	100106		IFILX1:	JMP	CONSL		;FINISHED
  2765					
  2766					;DOUBLE INDIRECT COMMAND FILE PROCESS
  2767					
  2768	101730	005737	147614		JFILIN:	TST	PRGRUN		;PROGRAM PRESENTLY RUNNING ?
  2769	101734	001402				BEQ	3$		;NO
  2770	101736	000137	100422			JMP	$KONS2		;YES, WAIT TILL IT'S DONE
  2771	101742	013701	147616		3$:	MOV	JFINP,R1	;XFER CHARS INTO INPUT BUFFER
  2772					
  2773	101746	105711				TSTB	(R1)		;FIRST CHAR A NULL ?
  2774	101750	001405				BEQ	2$		;YES, FINISHED
  2775					
  2776	101752	004737	101772			JSR	PC,IJFILX
  2777	101756	010137	147616			MOV	R1,JFINP	;RESAVE STORAGE POINTER
  2778	101762	000754				BR	IFILX
  2779					
  2780	101764	005037	147620		2$:	CLR	JFILEF
  2781	101770	000755				BR	IFILX1
  2782					
  2783	101772	012700	150500		IJFILX:	MOV	#$INBUF,R0
  2784	101776	010037	150716			MOV	R0,$INPTC
  2785					
  2786	102002	112120			1$:	MOVB	(R1)+,(R0)+
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 83
		CONS11 PAL[KL,SYS]	Page 11.1 	PROGRAM CONSOLE COMMAND PROCESS

  2787	102004	001376				BNE	1$
  2788					
  2789	102006	010037	150720			MOV	R0,$INPTR
  2790	102012	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 84
		CONS11 PAL[KL,SYS]	Page 12 	DIAGNOSTIC FUNCTIONS

  2791					.SBTTL	DIAGNOSTIC FUNCTIONS
  2792					
  2793					;DIAGNOSTIC FUNCTION EXECUTE
  2794					
  2795	102014	104226			.DFXCT:	DFLEGAL			;FUNCTION LEGAL ?
  2796	102016	104017				TTISDO			;GET FUNCTION
  2797	102020	020027	000037			CMP	R0,#037		;FUNCTION VALID ?
  2798	102024	003026				BGT	$DFERR		;FX IS 000 TO 037
  2799					
  2800	102026	104114				DFXCT			;DF EXECUTE
  2801	102030	000415				BR	.DFX		;RETURN TO CONSOLE
  2802					
  2803					;DIAGNOSTIC FUNCTION WRITE
  2804					
  2805	102032	104226			.DFWRT:	DFLEGAL			;FUNCTION LEGAL ?
  2806	102034	104017				TTISDO			;GET FUNCTION
  2807	102036	020027	000040			CMP	R0,#040
  2808	102042	002417				BLT	$DFERR
  2809	102044	020027	000077			CMP	R0,#077
  2810	102050	003014				BGT	$DFERR		;FW IS 040 TO 077
  2811	102052	010002				MOV	R0,R2		;SAVE FUNCTION
  2812	102054	104020				TTIS36			;GET DATA
  2813	102056	010001				MOV	R0,R1		;PUT ADR OF 36BITS IN R1
  2814						
  2815	102060	010200				MOV	R2,R0		;FUNCTION IN R0
  2816	102062	104120				DFWRT			;DIAGNOSTIC FUNCTION WRITE
  2817					
  2818	102064	000137	100230		.DFX:	JMP	$KONSL
  2819					
  2820					;DIAGNOSTIC FUNCTION SYNC, GENERATES PULSE AT "A36E1"
  2821					
  2822	102070	104226			.FS:	DFLEGAL			;FUNCTION LEGAL ?
  2823	102072	104022				TTITRM
  2824	102074	104115				DFXCTT
  2825	102076	000074				  74			;SYNC IS FUNCTION EXECUTE 74
  2826	102100	000771				BR	.DFX
  2827					
  2828					$DFERR:	PMSG	<?FUNCTION ERR>
  2829	102102	104025				  $PMSG
  2830	102104	144752				  $$CLIT
  2831	102106	000137	100004			JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 85
		CONS11 PAL[KL,SYS]	Page 13 	DIAGNOSTIC FUNCTIONS

  2832					;DIAGNOSTIC READ AND PRINT
  2833					
  2834	102112	104226			.DFRD:	DFLEGAL			;FUNCTION LEGAL ?
  2835	102114	005003				CLR	R3
  2836	102116	104017				TTISDO			;GET FUNCTION
  2837	102120	010002				MOV	R0,R2
  2838	102122	104015				TTIBRK
  2839	102124	103766				 BCS	$DFERR
  2840	102126	122700	000054			CMPB	#COMMA,R0	;IF BREAK IS A COMMA, MULTIPLE DFRD
  2841	102132	001003				BNE	1$
  2842					
  2843	102134	005203				INC	R3
  2844	102136	104010				TTCOCT
  2845	102140	010004				MOV	R0,R4		;SAVE LAST DFRD
  2846	102142	105737	147732		1$:	TSTB	RPTFLG
  2847	102146	001003				BNE	2$
  2848					
  2849	102150	010200				MOV	R2,R0
  2850	102152	104036				PNTOCS
  2851	102154	104033				PSLASH
  2852	102156	010200			2$:	MOV	R2,R0
  2853	102160	001406				BEQ	21$		;FR 0 USED TO READ E-BUS
  2854	102162	020027	000100			CMP	R0,#100
  2855	102166	002745				BLT	$DFERR
  2856	102170	020027	000177			CMP	R0,#177
  2857	102174	003342				BGT	$DFERR		;FR IS 100 TO 177
  2858	102176	012701	147710		21$:	MOV	#.DFRDA,R1
  2859	102202	104117				DFRDMV
  2860	102204	105737	147732			TSTB	RPTFLG
  2861	102210	001002				BNE	3$
  2862	102212	010100				MOV	R1,R0
  2863	102214	104134				PNT36B			;PRINT IN BINARY
  2864					
  2865	102216	005703			3$:	TST	R3
  2866	102220	001405				BEQ	4$
  2867					
  2868	102222	104031				PCRLF
  2869	102224	020204				CMP	R2,R4
  2870	102226	103002				BHIS	4$
  2871	102230	005202				INC	R2
  2872	102232	000743				BR	1$
  2873					
  2874	102234	000412			4$:	BR	ALLEXT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 86
		CONS11 PAL[KL,SYS]	Page 14 	DIAGNOSTIC FUNCTIONS

  2875	102236	104226			.DFDP:	DFLEGAL			;FUNCTION LEGAL ?
  2876	102240	012701	147710			MOV	#.DFRDA,R1
  2877	102244	104117				DFRDMV			;READ THE E-BUS
  2878					
  2879	102246	105737	147732			TSTB	RPTFLG
  2880	102252	001304				BNE	.DFX
  2881	102254	012700	147710		.DFDPC:	MOV	#.DFRDA,R0
  2882	102260	104042				PNT36			;PRINT IT OUT
  2883					
  2884	102262	005737	147734		ALLEXT:	TST	ALLFLG		;DOING ALL ?
  2885	102266	001005				BNE	1$		;YES
  2886	102270	105737	147732			TSTB	RPTFLG		;DOING A REPEAT ?
  2887	102274	001001				BNE	2$		;YES
  2888		102276			ALLEX1=.
  2889	102276	104031				PCRLF
  2890	102300	000671			2$:	BR	.DFX
  2891	102302	000207			1$:	RTS	PC		;ALL, CONTINUE
  2892					
  2893	102304	104022			.MQ:	TTITRM
  2894		102306			$ALLMQ=.
  2895						PMSGR	<MQ />
  2896	102306	104026				  $PMSGR
  2897	102310	144770				  $$CLIT
  2898	102312	012700	000122		1$:	MOV	#DPMQ,R0
  2899	102316	000747				BR	.DFDP
  2900					
  2901	102320	104226			.FM:	DFLEGAL			;FUNCTION LEGAL ?
  2902	102322	104022				TTITRM
  2903		102324			$ALLFM=.
  2904	102324	105737	147732			TSTB	RPTFLG
  2905	102330	001016				BNE	1$
  2906	102332	104214				PNTCI
  2907	102334	046506				"FM
  2908	102336	104140				DFRDT			;READ FM ADDRESS
  2909	102340	000114				  DPFMA
  2910	102342	017700	054756			MOV	@.DAT2,R0
  2911	102346	104053				SHIFTR
  2912	102350	000005				  5
  2913	102352	042700	177760			BIC	#177760,R0
  2914	102356	104047				PNTODT
  2915	102360	000002				  2
  2916	102362	104214				PNTCI
  2917	102364	000057				'/
  2918	102366	012700	000123		1$:	MOV	#DPFM,R0
  2919	102372	000721				BR	.DFDP
  2920					
  2921	102374	000137	102102		$DPERR:	JMP	$DFERR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 87
		CONS11 PAL[KL,SYS]	Page 15 	DIAGNOSTIC FUNCTIONS

  2922	102400	104005			.AR:	TTICHR
  2923	102402	103774				 BCS	$DPERR
  2924	102404	122700	000130			CMPB	#'X,R0		;IS COMMAND 3 LETTERS ?
  2925	102410	001406				BEQ	1$		;BR IF 3RD LETTER IS X
  2926	102412	104023				TTBTRM
  2927		102414			$ALLAR=.
  2928						PMSGR	<AR />
  2929	102414	104026				  $PMSGR
  2930	102416	144775				  $$CLIT
  2931	102420	012700	000120		2$:	MOV	#DPAR,R0
  2932	102424	000704				BR	.DFDP		;READ AND PRINT AR
  2933					
  2934	102426	104022			1$:	TTITRM
  2935		102430			$ALARX=.
  2936						PMSGR	<ARX/>
  2937	102430	104026				  $PMSGR
  2938	102432	145002				  $$CLIT
  2939	102434	012700	000125		3$:	MOV	#DPARX,R0
  2940	102440	000676				BR	.DFDP
  2941					
  2942	102442	104005			.AD:	TTICHR
  2943	102444	103753				 BCS	$DPERR
  2944	102446	122700	000130			CMPB	#'X,R0		;IS COMMAND 3 LETTERS ?
  2945	102452	001411				BEQ	1$		;BR IF 3RD LETTER IS X
  2946	102454	122700	000102			CMPB	#'B,R0
  2947	102460	001552				BEQ	.ADB		;ADB, PRINT ADDRESS BREAK
  2948	102462	104023				TTBTRM
  2949		102464			$ALLAD=.
  2950						PMSGR	<AD />
  2951	102464	104026				  $PMSGR
  2952	102466	145007				  $$CLIT
  2953	102470	012700	000127		2$:	MOV	#DPAD,R0
  2954	102474	000660				BR	.DFDP		;READ AND PRINT AD
  2955					
  2956	102476	104022			1$:	TTITRM
  2957		102500			$ALADX=.
  2958						PMSGR	<ADX/>
  2959	102500	104026				  $PMSGR
  2960	102502	145014				  $$CLIT
  2961	102504	012700	000126		3$:	MOV	#DPADX,R0
  2962	102510	000652				BR	.DFDP		;READ AND PRINT ADX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 88
		CONS11 PAL[KL,SYS]	Page 16 	DIAGNOSTIC FUNCTIONS

  2963	102512	104005			.BR:	TTICHR
  2964	102514	103727				 BCS	$DPERR
  2965	102516	122700	000130			CMPB	#'X,R0		;IS COMMAND 3 LETTERS ?
  2966	102522	001406				BEQ	1$		;BR IF 3RD LETTER IS X
  2967	102524	104023				TTBTRM
  2968		102526			$ALLBR=.
  2969						PMSGR	<BR />
  2970	102526	104026				  $PMSGR
  2971	102530	145021				  $$CLIT
  2972	102532	012700	000121		2$:	MOV	#DPBR,R0
  2973	102536	000637				BR	.DFDP		;READ AND PRINT BR
  2974					
  2975	102540	104022			1$:	TTITRM
  2976		102542			$ALBRX=.
  2977						PMSGR	<BRX/>
  2978	102542	104026				  $PMSGR
  2979	102544	145026				  $$CLIT
  2980	102546	012700	000124		3$:	MOV	#DPBRX,R0
  2981	102552	000631				BR	.DFDP		;READ AND PRINT THE BRX
  2982					
  2983	102554	104005			.ERG:	TTICHR
  2984	102556	103504				 BCS	$DPER1
  2985	102560	122700	000107			CMPB	#'G,R0
  2986	102564	001101				BNE	$DPER1
  2987	102566	104022				TTITRM
  2988					
  2989					$ALLEB:	PMSGR	<ERG/>
  2990	102570	104026				  $PMSGR
  2991	102572	145033				  $$CLIT
  2992	102574	012700	000167			MOV	#DPERG,R0
  2993	102600	000616				BR	.DFDP		;READ & PRINT EBUS REGISTER
  2994					
  2995					;MASTER RESET
  2996					
  2997	102602	104022			.MRESET:TTITRM
  2998	102604	104076				MRESET
  2999	102606	000405				BR	.DAX
  3000					
  3001					;DEPOSIT INTO AR
  3002					
  3003	102610	104226			.DA:	DFLEGAL			;FUNCTION LEGAL ?
  3004	102612	104020				TTIS36			;GET 36 BIT AR DATA
  3005	102614	010001				MOV	R0,R1		;ADR OF 36 BITS TO R1
  3006	102616	004537	143624			JSR	R5,WIRAR1	;CALL IR/AR WRITE ROUTINE
  3007	102622	000137	100230		.DAX:	JMP	$KONSL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 89
		CONS11 PAL[KL,SYS]	Page 17 	DIAGNOSTIC FUNCTIONS

  3008	102626	104005			.PC:	TTICHR
  3009	102630	103457				 BCS	$DPER1
  3010	102632	122700	000106			CMPB	#'F,R0
  3011	102636	001471				BEQ	.PCF		;"PCF" COMMAND
  3012	102640	104023				TTBTRM
  3013		102642			$ALLPC=.
  3014						PMSG	<PC />
  3015	102642	104025				  $PMSG
  3016	102644	145040				  $$CLIT
  3017	102646	005737	147670			TST	TENRUN		;PDP-10 PRESENTLY RUNNING ?
  3018	102652	001417				BEQ	1$		;NO, GO AHEAD THEN
  3019	102654	104115				DFXCTT
  3020	102656	000010				  CLRRUN		;CLEAR RUN
  3021	102660	104056				TDELAY			;WAIT FOR HALT LOOP
  3022	102662	104115				DFXCTT
  3023	102664	000000				  STPCLK		;STOP CLOCK
  3024					
  3025	102666	104123				DFPC			;READ PC
  3026					
  3027						PUSH	R0
  3028	102672	104115				DFXCTT
  3029	102674	000001				  STRCLK		;START CLOCK
  3030	102676	104115				DFXCTT
  3031	102700	000011				  SETRUN		;SET RUN
  3032	102702	104115				DFXCTT
  3033	102704	000012				  CONBUT		;SET CONTINUE
  3034						POP	R0
  3035	102710	000401				BR	PCVMAP		;GO PRINT
  3036					
  3037	102712	104123			1$:	DFPC
  3038					
  3039					PCVMAP:
  3040	102714	104137				PNTADR
  3041	102716	005737	147734			TST	ALLFLG
  3042	102722	001002				BNE	1$
  3043	102724	000137	102276			JMP	ALLEX1		;RETURN TO CONSOLE
  3044	102730	000207			1$:	RTS	PC		;ALL, RETURN TO ROUTINE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 90
		CONS11 PAL[KL,SYS]	Page 18 	DIAGNOSTIC FUNCTIONS

  3045	102732	104226			.VM:	DFLEGAL			;FUNCTION LEGAL ?
  3046	102734	104005				TTICHR
  3047	102736	103414				 BCS	$DPER1
  3048	102740	122700	000101			CMPB	#'A,R0
  3049	102744	001404				BEQ	1$
  3050	102746	122700	000110			CMPB	#'H,R0
  3051	102752	001410				BEQ	.VMH
  3052	102754	000405				BR	$DPER1
  3053	102756	104022			1$:	TTITRM
  3054		102760			$ALVMA=.
  3055						PMSG	<VMA/>
  3056	102760	104025				  $PMSG
  3057	102762	145045				  $$CLIT
  3058	102764	104124				DFVMA
  3059	102766	000752				BR	PCVMAP
  3060					
  3061	102770	000137	102102		$DPER1:	JMP	$DFERR
  3062					
  3063	102774	104022			.VMH:	TTITRM
  3064		102776			$ALVMH=.
  3065						PMSG	<VMH/>
  3066	102776	104025				  $PMSG
  3067	103000	145052				  $$CLIT
  3068	103002	104150				DFVMAH
  3069	103004	000743				BR	PCVMAP
  3070					
  3071	103006	104226			.ADB:	DFLEGAL			;FUNCTION LEGAL ?
  3072	103010	104022				TTITRM
  3073						PMSG	<ADB/>
  3074	103012	104025				  $PMSG
  3075	103014	145057				  $$CLIT
  3076	103016	104125				DFADB
  3077	103020	000735				BR	PCVMAP
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 91
		CONS11 PAL[KL,SYS]	Page 19 	DIAGNOSTIC FUNCTIONS

  3078					;PCF COMMAND - PRINT PC FLAGS
  3079	103022	104022			.PCF:	TTITRM
  3080		103024			$ALPCF=.
  3081	103024	005737	147670			TST	TENRUN		;PDP-10 PRESENTLY RUNNING ?
  3082	103030	001416				BEQ	1$		;NO, GO AHEAD THEN
  3083	103032	104115				DFXCTT
  3084	103034	000010				  CLRRUN		;CLEAR RUN
  3085	103036	104056				TDELAY			;WAIT FOR HALT LOOP
  3086	103040	104115				DFXCTT
  3087	103042	000000				  STPCLK		;STOP CLOCK
  3088	103044	004737	103106			JSR	PC,PCF		;READ AND PRINT PC FLAGS
  3089	103050	104115				DFXCTT
  3090	103052	000001				  STRCLK		;START CLOCK
  3091	103054	104115				DFXCTT
  3092	103056	000011				  SETRUN		;SET RUN
  3093	103060	104115				DFXCTT
  3094	103062	000012				  CONBUT		;SET CONTINUE
  3095	103064	000402				BR	2$
  3096					
  3097	103066	004737	103106		1$:	JSR	PC,PCF		;READ AND PRINT PC FLAGS
  3098	103072	005737	147734		2$:	TST	ALLFLG
  3099	103076	001002				BNE	3$
  3100	103100	000137	102276			JMP	ALLEX1		;PRINT CRLF AND RETURN TO KONSL
  3101					
  3102	103104	000207			3$:	RTS	PC		;ALL, RETURN TO ROUTINE
  3103					
  3104					PCF:	PMSG	<PCF/ >
  3105	103106	104025				  $PMSG
  3106	103110	145064				  $$CLIT
  3107	103112	012705	103214			MOV	#PCFTBL,R5
  3108	103116	005004				CLR	R4		;R4 ZERO IF THIS IS FIRST FROB TYPED
  3109	103120	112500			1$:	MOVB	(R5)+,R0	;GET DIAG FUNC FOR NEXT BIT
  3110	103122	001433				BEQ	9$		;BR IF END OF TABLE
  3111	103124	104116				DFRD			;GET BIT INTO DTE REG
  3112	103126	017702	054174			MOV	@.DAT1,R2	;BITS 0-3
  3113	103132	017701	054166			MOV	@.DAT2,R1	;BITS 4-19
  3114		000004				.REPT 4
  3115						 ASL R1
  3116						 ROL R2
  3117						.ENDR			;BITS 0-7 (4.9-4.2) RIGHT ALIGNED IN R2
  3118	103136	006301				 ASL R1
  3119	103140	006102				 ROL R2
  3120	103142	006301				 ASL R1
  3121	103144	006102				 ROL R2
  3122	103146	006301				 ASL R1
  3123	103150	006102				 ROL R2
  3124	103152	006301				 ASL R1
  3125	103154	006102				 ROL R2
  3126	103156	112501				MOVB	(R5)+,R1	;GET MASK FOR BIT OF INTEREST
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 92
		CONS11 PAL[KL,SYS]	Page 19.1 	DIAGNOSTIC FUNCTIONS

  3127	103160	100002				BPL	2$
  3128	103162	005102				COM	R2		;BIT BACKWARDS IN HARDWARE
  3129	103164	005401				NEG	R1
  3130	103166	012500			2$:	MOV	(R5)+,R0	;GET POINTER TO BIT NAME STRING
  3131	103170	030102				BIT	R1,R2
  3132	103172	001406				BEQ	3$
  3133	103174	005704				TST	R4		;IF NOT FIRST, PUT A COMMA, SPACE
  3134	103176	001402				BEQ	4$
  3135	103200	104214				PNTCI
  3136	103202	020054				  ", 
  3137	103204	104024			4$:	PNTAL			;BIT IS ON, GIVE NAME
  3138	103206	005204				INC	R4
  3139	103210	000743			3$:	BR	1$		;LOOP BACK FOR NEXT BIT
  3140					
  3141	103212	000207			9$:	RTS PC
  3142					
  3143					;PC FLAGS TABLE
  3144					;FIRST BYTE IS DIAG FCN, SECOND IS MASK FOR BIT (NEGATIVE => BIT COMPLEMENTED)
  3145					;SECOND WORD -> ASCIZ BIT NAME			(Negative means more than 177)
  3146					
  3147					.MACRO PCFTE NAME,DFN,MASK
  3148						.LIT $$ZZQ,<.ASCIZ\NAME\>
  3149						.BYTE DFN,MASK
  3150						.WORD $$ZZQ
  3151					.ENDM
  3152					
  3153					PCFTBL:	PCFTE OV,131,40
  3154						.LIT $$ZZQ,<.ASCIZ\OV\>
  3155		103214					$$CLC=.
  3156		145072					.=$$CLIT
  3157		145072					.EVEN
  3158		145072				  $$ZZQ=.
  3159						  .IIF	B <.ASCIZ\OV\>,0
  3160	145072	   117		
  3161	145073	   126		
  3162	145074	   000		
  3163						  .IIF	NB <.ASCIZ\OV\>,.ASCIZ\OV\
  3164		145076					.EVEN
  3165		145076					$$CLIT=.
  3166		103214					.=$$CLC
  3167	103214	   131		
  3168	103215	   040				.BYTE 131,40
  3169	103216	145072				.WORD $$ZZQ
  3170						PCFTE CRY0,131,20
  3171						.LIT $$ZZQ,<.ASCIZ\CRY0\>
  3172		103220					$$CLC=.
  3173		145076					.=$$CLIT
  3174		145076					.EVEN
  3175		145076				  $$ZZQ=.
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 93
		CONS11 PAL[KL,SYS]	Page 19.2 	DIAGNOSTIC FUNCTIONS

  3176						  .IIF	B <.ASCIZ\CRY0\>,0
  3177	145076	   103		
  3178	145077	   122		
  3179	145100	   131		
  3180	145101	   060		
  3181	145102	   000		
  3182						  .IIF	NB <.ASCIZ\CRY0\>,.ASCIZ\CRY0\
  3183		145104					.EVEN
  3184		145104					$$CLIT=.
  3185		103220					.=$$CLC
  3186	103220	   131		
  3187	103221	   020				.BYTE 131,20
  3188	103222	145076				.WORD $$ZZQ
  3189						PCFTE CRY1,131,10
  3190						.LIT $$ZZQ,<.ASCIZ\CRY1\>
  3191		103224					$$CLC=.
  3192		145104					.=$$CLIT
  3193		145104					.EVEN
  3194		145104				  $$ZZQ=.
  3195						  .IIF	B <.ASCIZ\CRY1\>,0
  3196	145104	   103		
  3197	145105	   122		
  3198	145106	   131		
  3199	145107	   061		
  3200	145110	   000		
  3201						  .IIF	NB <.ASCIZ\CRY1\>,.ASCIZ\CRY1\
  3202		145112					.EVEN
  3203		145112					$$CLIT=.
  3204		103224					.=$$CLC
  3205	103224	   131		
  3206	103225	   010				.BYTE 131,10
  3207	103226	145104				.WORD $$ZZQ
  3208						PCFTE FOV,132,20
  3209						.LIT $$ZZQ,<.ASCIZ\FOV\>
  3210		103230					$$CLC=.
  3211		145112					.=$$CLIT
  3212		145112					.EVEN
  3213		145112				  $$ZZQ=.
  3214						  .IIF	B <.ASCIZ\FOV\>,0
  3215	145112	   106		
  3216	145113	   117		
  3217	145114	   126		
  3218	145115	   000		
  3219						  .IIF	NB <.ASCIZ\FOV\>,.ASCIZ\FOV\
  3220		145116					.EVEN
  3221		145116					$$CLIT=.
  3222		103230					.=$$CLC
  3223	103230	   132		
  3224	103231	   020				.BYTE 132,20
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 94
		CONS11 PAL[KL,SYS]	Page 19.3 	DIAGNOSTIC FUNCTIONS

  3225	103232	145112				.WORD $$ZZQ
  3226						PCFTE FPD,130,2
  3227						.LIT $$ZZQ,<.ASCIZ\FPD\>
  3228		103234					$$CLC=.
  3229		145116					.=$$CLIT
  3230		145116					.EVEN
  3231		145116				  $$ZZQ=.
  3232						  .IIF	B <.ASCIZ\FPD\>,0
  3233	145116	   106		
  3234	145117	   120		
  3235	145120	   104		
  3236	145121	   000		
  3237						  .IIF	NB <.ASCIZ\FPD\>,.ASCIZ\FPD\
  3238		145122					.EVEN
  3239		145122					$$CLIT=.
  3240		103234					.=$$CLC
  3241	103234	   130		
  3242	103235	   002				.BYTE 130,2
  3243	103236	145116				.WORD $$ZZQ
  3244						PCFTE USER,134,340
  3245						.LIT $$ZZQ,<.ASCIZ\USER\>
  3246		103240					$$CLC=.
  3247		145122					.=$$CLIT
  3248		145122					.EVEN
  3249		145122				  $$ZZQ=.
  3250						  .IIF	B <.ASCIZ\USER\>,0
  3251	145122	   125		
  3252	145123	   123		
  3253	145124	   105		
  3254	145125	   122		
  3255	145126	   000		
  3256						  .IIF	NB <.ASCIZ\USER\>,.ASCIZ\USER\
  3257		145130					.EVEN
  3258		145130					$$CLIT=.
  3259		103240					.=$$CLC
  3260	103240	   134		
  3261	103241	   340				.BYTE 134,340
  3262	103242	145122				.WORD $$ZZQ
  3263						PCFTE IOTUSR,136,4
  3264						.LIT $$ZZQ,<.ASCIZ\IOTUSR\>
  3265		103244					$$CLC=.
  3266		145130					.=$$CLIT
  3267		145130					.EVEN
  3268		145130				  $$ZZQ=.
  3269						  .IIF	B <.ASCIZ\IOTUSR\>,0
  3270	145130	   111		
  3271	145131	   117		
  3272	145132	   124		
  3273	145133	   125		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 95
		CONS11 PAL[KL,SYS]	Page 19.4 	DIAGNOSTIC FUNCTIONS

  3274	145134	   123		
  3275	145135	   122		
  3276	145136	   000		
  3277						  .IIF	NB <.ASCIZ\IOTUSR\>,.ASCIZ\IOTUSR\
  3278		145140					.EVEN
  3279		145140					$$CLIT=.
  3280		103244					.=$$CLC
  3281	103244	   136		
  3282	103245	   004				.BYTE 136,4
  3283	103246	145130				.WORD $$ZZQ
  3284						PCFTE PUBLIC,135,20
  3285						.LIT $$ZZQ,<.ASCIZ\PUBLIC\>
  3286		103250					$$CLC=.
  3287		145140					.=$$CLIT
  3288		145140					.EVEN
  3289		145140				  $$ZZQ=.
  3290						  .IIF	B <.ASCIZ\PUBLIC\>,0
  3291	145140	   120		
  3292	145141	   125		
  3293	145142	   102		
  3294	145143	   114		
  3295	145144	   111		
  3296	145145	   103		
  3297	145146	   000		
  3298						  .IIF	NB <.ASCIZ\PUBLIC\>,.ASCIZ\PUBLIC\
  3299		145150					.EVEN
  3300		145150					$$CLIT=.
  3301		103250					.=$$CLC
  3302	103250	   135		
  3303	103251	   020				.BYTE 135,20
  3304	103252	145140				.WORD $$ZZQ
  3305						PCFTE ADB INH,137,40
  3306						.LIT $$ZZQ,<.ASCIZ\ADB INH\>
  3307		103254					$$CLC=.
  3308		145150					.=$$CLIT
  3309		145150					.EVEN
  3310		145150				  $$ZZQ=.
  3311						  .IIF	B <.ASCIZ\ADB INH\>,0
  3312	145150	   101		
  3313	145151	   104		
  3314	145152	   102		
  3315	145153	   040		
  3316	145154	   111		
  3317	145155	   116		
  3318	145156	   110		
  3319	145157	   000		
  3320						  .IIF	NB <.ASCIZ\ADB INH\>,.ASCIZ\ADB INH\
  3321		145160					.EVEN
  3322		145160					$$CLIT=.
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 96
		CONS11 PAL[KL,SYS]	Page 19.5 	DIAGNOSTIC FUNCTIONS

  3323		103254					.=$$CLC
  3324	103254	   137		
  3325	103255	   040				.BYTE 137,40
  3326	103256	145150				.WORD $$ZZQ
  3327						PCFTE TRP 2,130,40
  3328						.LIT $$ZZQ,<.ASCIZ\TRP 2\>
  3329		103260					$$CLC=.
  3330		145160					.=$$CLIT
  3331		145160					.EVEN
  3332		145160				  $$ZZQ=.
  3333						  .IIF	B <.ASCIZ\TRP 2\>,0
  3334	145160	   124		
  3335	145161	   122		
  3336	145162	   120		
  3337	145163	   040		
  3338	145164	   062		
  3339	145165	   000		
  3340						  .IIF	NB <.ASCIZ\TRP 2\>,.ASCIZ\TRP 2\
  3341		145166					.EVEN
  3342		145166					$$CLIT=.
  3343		103260					.=$$CLC
  3344	103260	   130		
  3345	103261	   040				.BYTE 130,40
  3346	103262	145160				.WORD $$ZZQ
  3347						PCFTE TRP 1,130,4
  3348						.LIT $$ZZQ,<.ASCIZ\TRP 1\>
  3349		103264					$$CLC=.
  3350		145166					.=$$CLIT
  3351		145166					.EVEN
  3352		145166				  $$ZZQ=.
  3353						  .IIF	B <.ASCIZ\TRP 1\>,0
  3354	145166	   124		
  3355	145167	   122		
  3356	145170	   120		
  3357	145171	   040		
  3358	145172	   061		
  3359	145173	   000		
  3360						  .IIF	NB <.ASCIZ\TRP 1\>,.ASCIZ\TRP 1\
  3361		145174					.EVEN
  3362		145174					$$CLIT=.
  3363		103264					.=$$CLC
  3364	103264	   130		
  3365	103265	   004				.BYTE 130,4
  3366	103266	145166				.WORD $$ZZQ
  3367						PCFTE FXU,132,10
  3368						.LIT $$ZZQ,<.ASCIZ\FXU\>
  3369		103270					$$CLC=.
  3370		145174					.=$$CLIT
  3371		145174					.EVEN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 97
		CONS11 PAL[KL,SYS]	Page 19.6 	DIAGNOSTIC FUNCTIONS

  3372		145174				  $$ZZQ=.
  3373						  .IIF	B <.ASCIZ\FXU\>,0
  3374	145174	   106		
  3375	145175	   130		
  3376	145176	   125		
  3377	145177	   000		
  3378						  .IIF	NB <.ASCIZ\FXU\>,.ASCIZ\FXU\
  3379		145200					.EVEN
  3380		145200					$$CLIT=.
  3381		103270					.=$$CLC
  3382	103270	   132		
  3383	103271	   010				.BYTE 132,10
  3384	103272	145174				.WORD $$ZZQ
  3385						PCFTE DIV,131,2
  3386						.LIT $$ZZQ,<.ASCIZ\DIV\>
  3387		103274					$$CLC=.
  3388		145200					.=$$CLIT
  3389		145200					.EVEN
  3390		145200				  $$ZZQ=.
  3391						  .IIF	B <.ASCIZ\DIV\>,0
  3392	145200	   104		
  3393	145201	   111		
  3394	145202	   126		
  3395	145203	   000		
  3396						  .IIF	NB <.ASCIZ\DIV\>,.ASCIZ\DIV\
  3397		145204					.EVEN
  3398		145204					$$CLIT=.
  3399		103274					.=$$CLC
  3400	103274	   131		
  3401	103275	   002				.BYTE 131,2
  3402	103276	145200				.WORD $$ZZQ
  3403	103300	000000				0
  3404					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 98
		CONS11 PAL[KL,SYS]	Page 20 	DIAGNOSTIC FUNCTIONS

  3405	103302	104022			.FE:	TTITRM
  3406					$ALLFE:	PMSGR	<FE/>
  3407	103304	104026				  $PMSGR
  3408	103306	145204				  $$CLIT
  3409	103310	012704	000132			MOV	#DPFE,R4
  3410	103314	000405				BR	FESCP
  3411					
  3412	103316	104022			.SC:	TTITRM
  3413					$ALLSC:	PMSGR	<SC/>
  3414	103320	104026				  $PMSGR
  3415	103322	145210				  $$CLIT
  3416	103324	012704	000130			MOV	#DPSC,R4
  3417	103330	104226			FESCP:	DFLEGAL			;FUNCTION LEGAL ?
  3418	103332	010400				MOV	R4,R0
  3419	103334	104116				DFRD
  3420					
  3421	103336	017703	053762			MOV	@.DAT2,R3	;GET LO-ORDER 5 BITS
  3422	103342	000303				SWAB	R3		;FROM 7-11 OF DEXWDS
  3423	103344	042703	177740			BIC	#177740,R3
  3424					
  3425	103350	010400				MOV	R4,R0
  3426	103352	005200				INC	R0
  3427	103354	104116				DFRD
  3428					
  3429	103356	017700	053742			MOV	@.DAT2,R0	;GET HI-ORDER 5 BITS
  3430	103362	104053				SHIFTR
  3431	103364	000003				3
  3432	103366	042700	176037			BIC	#176037,R0
  3433	103372	050300				BIS	R3,R0		;COMBINE HI & LO ORDER BITS
  3434					
  3435	103374	105737	147732			TSTB	RPTFLG
  3436	103400	001003				BNE	1$
  3437	103402	104047				PNTODT
  3438	103404	000004				4
  3439	103406	104032				PSPACE
  3440	103410	000137	102262		1$:	JMP	ALLEXT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 99
		CONS11 PAL[KL,SYS]	Page 21 	DIAGNOSTIC FUNCTIONS

  3441					;PRINT PRIORITY INTERRUPT FUNCTIONS
  3442					
  3443	103414	104226			.PI:	DFLEGAL			;FUNCTION LEGAL ?
  3444	103416	104022				TTITRM
  3445		103420			$ALLPI=.
  3446	103420	004737	103452			JSR	PC,$ALPIG	;PRINT PI GENS
  3447	103424	004737	103504			JSR	PC,$ALPIH	;PRINT PI HOLDS
  3448	103430	004737	103536			JSR	PC,$ALPIO	;PRINT PI ON'S
  3449	103434	005737	147734			TST	ALLFLG
  3450	103440	001003				BNE	1$
  3451	103442	104031				PCRLF
  3452	103444	000137	100230			JMP	$KONSL
  3453					
  3454	103450	000207			1$:	RTS	PC		;ALL, RETURN TO ROUTINE
  3455					
  3456					$ALPIG:	PMSG	<PI GEN/>
  3457	103452	104025				  $PMSG
  3458	103454	145214				  $$CLIT
  3459	103456	104140				DFRDT
  3460	103460	000101				  READ1			;READ PI GENS
  3461									;FR 101, BITS 11-17
  3462	103462	017700	053636		$ALPIY:	MOV	@.DAT2,R0
  3463	103466	104053				SHIFTR
  3464	103470	000002				  2
  3465					
  3466	103472	042700	177600		$ALPIX:	BIC	#177600,R0	;DATA IS ONLY 7 BITS
  3467	103476	104047				PNTODT
  3468	103500	000003				  3
  3469	103502	000207				RTS	PC
  3470					
  3471					$ALPIH:	PMSG	< PI HOLD/>
  3472	103504	104025				  $PMSG
  3473	103506	145224				  $$CLIT
  3474	103510	104140				DFRDT
  3475	103512	000100				  READ0			;READ PI HOLDS
  3476	103514	017700	053604			MOV	@.DAT2,R0	;FR 100, BITS 03-09
  3477	103520	017701	053602			MOV	@.DAT1,R1
  3478	103524	006001				ROR	R1
  3479	103526	006000				ROR	R0
  3480	103530	104053				SHIFTR
  3481	103532	000011				  9.
  3482	103534	000756				BR	$ALPIX
  3483					
  3484					$ALPIO:	PMSG	< PI ON/>
  3485	103536	104025				  $PMSG
  3486	103540	145236				  $$CLIT
  3487	103542	104140				DFRDT
  3488	103544	000100				  READ0			;READ PI ONS
  3489	103546	000745				BR	$ALPIY		;FR 100, BITS 11-17
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 100
		CONS11 PAL[KL,SYS]	Page 22 	DIAGNOSTIC FUNCTIONS

  3490					;PRINT ALL - C-RAM & REGISTERS
  3491					
  3492	103550	104005			.ALL:	TTICHR
  3493	103552	103410				 BCS	1$
  3494	103554	122700	000114			CMPB	#'L,R0
  3495	103560	001005				BNE	1$
  3496	103562	104022				TTITRM
  3497	103564	104226				DFLEGAL			;FUNCTION LEGAL ?
  3498	103566	104132				PNTCPU
  3499	103570	000137	100230			JMP	$KONSL
  3500	103574	000137	102102		1$:	JMP	$DFERR		;ERROR
  3501					
  3502	103600	104055			$PNTCPU:SETFLG
  3503	103602	147734				  ALLFLG		;SET ALL FLAG
  3504						PUSH	RPTFLG
  3505	103610	005037	147732			CLR	RPTFLG
  3506					
  3507	103614	004737	126274			JSR	PC,$ALLEC	;PRINT C-RAM
  3508					
  3509	103620	004737	102414			JSR	PC,$ALLAR	;PRINT AR
  3510	103624	004737	102526			JSR	PC,$ALLBR	;PRINT BR
  3511	103630	004737	102464			JSR	PC,$ALLAD	;PRINT ADDER
  3512	103634	004737	103320			JSR	PC,$ALLSC	;PRINT SC
  3513	103640	004737	102642			JSR	PC,$ALLPC	;PRINT PC
  3514	103644	104031				PCRLF
  3515					
  3516	103646	004737	102430			JSR	PC,$ALARX	;PRINT ARX
  3517	103652	004737	102542			JSR	PC,$ALBRX	;PRINT BRX
  3518	103656	004737	102500			JSR	PC,$ALADX	;PRINT ADX
  3519	103662	004737	103304			JSR	PC,$ALLFE	;PRINT FE
  3520	103666	004737	102760			JSR	PC,$ALVMA	;PRINT VMA
  3521	103672	104031				PCRLF
  3522					
  3523	103674	004737	102306			JSR	PC,$ALLMQ	;PRINT MQ
  3524	103700	004737	102324			JSR	PC,$ALLFM	;PRINT FM
  3525	103704	004737	102570			JSR	PC,$ALLEB	;PRINT EBUS REGISTER
  3526	103710	004737	102776			JSR	PC,$ALVMH	;PRINT VMA HELD
  3527	103714	104031				PCRLF
  3528					
  3529	103716	004737	103452			JSR	PC,$ALPIG	;PRINT PI GENS
  3530	103722	004737	103504			JSR	PC,$ALPIH	;PRINT PI HOLDS
  3531	103726	004737	103536			JSR	PC,$ALPIO	;PRINT PI ON'S
  3532						POP	RPTFLG
  3533	103736	104031				PCRLF
  3534	103740	005037	147734			CLR	ALLFLG
  3535						EXIT
  3536	103744	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 101
		CONS11 PAL[KL,SYS]	Page 23 	PDP-10 START/STOP FUNCTIONS

  3537					.SBTTL	PDP-10 START/STOP FUNCTIONS
  3538					
  3539					;THESE REQUIRE STANDARD MICROCODE TO DO ANYTHING WORTHWHILE!
  3540					
  3541					;STOP PDP-10, CLEAR RUN FLOP
  3542					
  3543	103750	104022			$SP:	TTITRM
  3544	103752	104077				TENSP			;STOP TEN
  3545	103754	103002				BCC	1$
  3546	103756	000137	104566			JMP	.XCTER		;DID NOT STOP PROPERLY
  3547	103762	005037	147614		1$:	CLR	PRGRUN
  3548						PMSG	<\KL10 STOPPED >
  3549	103766	104025				  $PMSG
  3550	103770	145246				  $$CLIT
  3551	103772	004737	107732			JSR	PC,$ALSTA	;PRINT PC,VMA,PI,PCF AND A CRLF
  3552	103776	000443				BR	$RNX		;HOPE ENOUGH DELAY BUILT IN
  3553					
  3554					;CONTINUE PDP-10 FROM OLD PC. ASSUME CLOCK MAY BE OFF
  3555					
  3556	104000	104022			$RN:	TTITRM
  3557					
  3558	104002	005037	157264		$RNN:	CLR	CLKPE		;CLEAR CLOCK PARITY ENABLES
  3559	104006	012702	000020			MOV	#20,R2
  3560	104012	013701	157262			MOV	PEBITS,R1	;GET ENABLE BITS
  3561	104016	001410				BEQ	2$		;NOT ENABLED
  3562	104020	030201				BIT	R2,R1		;AR/ARX PARITY ENABLED ?
  3563	104022	001403				BEQ	1$		;NO
  3564	104024	052737	000002	157264		BIS	#2,CLKPE	;YES, SET ENABLE BIT
  3565	104032	052737	000001	157264	1$:	BIS	#1,CLKPE	;SET CLOCK STOP ENABLE
  3566					
  3567	104040	104141			2$:	DFWRTT
  3568	104042	157264				  CLKPE
  3569	104044	000047				  LDCHK2		;LOAD ENABLE FUNCTION REGISTER
  3570					
  3571	104046	040201			3$:	BIC	R2,R1
  3572	104050	010137	157264			MOV	R1,CLKPE	;SETUP FM,CRAM,DRAM, FS
  3573	104054	104141				DFWRTT
  3574	104056	157264				  CLKPE
  3575	104060	000046				  LDCHK1		;LOAD CONDITION ENABLE REGISTER
  3576					
  3577	104062	104115				DFXCTT			;GET CLOCK RUNNING
  3578	104064	000001				  STRCLK
  3579	104066	104115				DFXCTT			;SET RUN AND LET 'ER GO
  3580	104070	000011				  SETRUN
  3581	104072	104115				DFXCTT			;SET CONTINUE BUTTON
  3582	104074	000012				  CONBUT
  3583	104076	104055				SETFLG
  3584	104100	147670				  TENRUN		;SET TEN RUN FLAG
  3585	104102	104055				SETFLG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 102
		CONS11 PAL[KL,SYS]	Page 23.1 	PDP-10 START/STOP FUNCTIONS

  3586	104104	147614				  PRGRUN		;SET PROGRAM RUNNING FLAG
  3587	104106	000137	100230		$RNX:	JMP	$KONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 103
		CONS11 PAL[KL,SYS]	Page 24 	PDP-10 START/STOP FUNCTIONS

  3588					;START PDP-10 DDT
  3589					
  3590	104112	104016			$DDTX:	TTISDL
  3591	104114	103402				 BCS	1$		;NON-NUMBER
  3592	104116	000137	127046			JMP	$DD		;NUMBER, MUST BE FOR D-RAM
  3593					
  3594	104122	122700	000124		1$:	CMPB	#'T,R0
  3595	104126	001402				BEQ	2$		;"DDT", START PDP-10 AT "DDTSRT"
  3596	104130	000137	102102			JMP	$DFERR
  3597					
  3598	104134	104022			2$:	TTITRM
  3599	104136	104226				DFLEGAL			;DON'T DO THIS IF ALREADY RUNNING
  3600	104140	013737	100070	157222		MOV	TDDT,$$STJRS	;SETUP JRST INSTRUCTION
  3601	104146	113737	100072	157224		MOVB	TDDT+2,$$STJRS+2
  3602					;CAN'T ENTER DDT WHILE IN USER MODE.
  3603	104154	104140				DFRDT
  3604	104156	000134				 134
  3605	104160	032777	000002	053140		BIT	#2,@.DAT1
  3606	104166	001004				BNE	3$		;BRANCH IF IN EXEC MODE
  3607						PMSG	<?Can't. KL10 in USER mode.>
  3608	104170	104025				  $PMSG
  3609	104172	145265				  $$CLIT
  3610	104174	000137	100004			JMP	$CNTLC
  3611					
  3612	104200	005037	150022		3$:	CLR 	TENTTY
  3613	104204	012700	157222			MOV	#$$STJRS,R0
  3614	104210	104101				EXCT			;EXECUTE JRST TO START DDT
  3615	104212	103273				BCC	$RNN		;GO SAY -10 IS RUNNING
  3616	104214	000137	104566		$DDTER:	JMP	.XCTER		;OR BARF IF MICRO CODE IS HUNG
  3617					
  3618					;SINGLE INSTRUCT PDP-10. ASSUME CLOCK IS RUNNING AND RUN IS SET
  3619					
  3620	104220	104077			$SI:	TENSP			;STOP TEN
  3621	104222	103774				BCS	$DDTER		;DID NOT STOP PROPERLY
  3622	104224	005005				CLR	R5
  3623	104226	104016				TTISDL
  3624	104230	103412				 BCS	4$		;NON-NUMBER
  3625	104232	104011				TTIDEC
  3626	104234	103401				 BCS	2$		;NO ARG, DO ONCE
  3627	104236	010005				MOV	R0,R5
  3628	104240	104115			2$:	DFXCTT			;PRESS CONTINUE PULSER
  3629	104242	000012				  CONBUT
  3630	104244	104056				TDELAY			;SMALL TIME DELAY
  3631	104246	005305				DEC	R5		;COMPLETED REQUESTED INSTRUCTIONS ?
  3632	104250	003373				BGT	2$
  3633	104252	000137	100230			JMP	$KONSL		;YES, RETURN TO CONSOLE
  3634					
  3635	104256	122700	000120		4$:	CMPB	#'P,R0
  3636	104262	001366				BNE	2$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 104
		CONS11 PAL[KL,SYS]	Page 24.1 	PDP-10 START/STOP FUNCTIONS

  3637					
  3638	104264	104022			5$:	TTITRM			;"SIP",SINGLE INSTRUCT AND PRINT
  3639	104266	104115				DFXCTT			;STOP CLOCK
  3640	104270	000000				  STPCLK
  3641	104272	000137	104466			JMP	SIPNT		;REST SAME AS LAST OF "EXP"
  3642					
  3643					;DIAGNOSTIC FUNCTION LEGALITY CHECK
  3644					
  3645	104276	005737	147670		$DFLEGAL:TST	TENRUN		;PDP-10 PRESENTLY RUNNING ?
  3646	104302	001002				BNE	1$		;YES, OPERATION ILLEGAL, ABORT
  3647						EXIT
  3648	104304	000137	124064			  JMP	$EXIT
  3649					1$:	PMSG	<?KL10 RUNNING, TYPE "SP" FIRST>
  3650	104310	104025				  $PMSG
  3651	104312	145320				  $$CLIT
  3652	104314	000137	100624			JMP	$$$CC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 105
		CONS11 PAL[KL,SYS]	Page 25 	PDP-10 START/STOP FUNCTIONS

  3653					;PULSE THE E-BOX CLOCK
  3654					
  3655	104320	104226			.PL:	DFLEGAL			;FUNCTION LEGAL ?
  3656	104322	005037	152216			CLR	TENCLK		;TURN OFF CLOCK IF ON
  3657	104326	104016				TTISDL
  3658	104330	103404				 BCS	1$		;NO ARG, DO ONCE
  3659	104332	104011				TTIDEC
  3660	104334	103402				 BCS	1$		;DO ONCE ANYWAY
  3661	104336	010001				MOV	R0,R1		;SAVE PULSE COUNT
  3662	104340	000401				BR	2$
  3663	104342	005001			1$:	CLR	R1
  3664	104344	104135			2$:	ECLOK
  3665	104346	103002				 BCC	3$
  3666	104350	004137	141100			JSR	R1,$ECTIM
  3667	104354	005301			3$:	DEC	R1		;DONE REQUESTED CLOCKS ?
  3668	104356	003372				BGT	2$		;NOT YET
  3669	104360	000137	100230		.PLX:	JMP	$KONSL
  3670					
  3671					;START MICROCODE IDLE.
  3672					;SUPPORT EXAMINE, DEPOSIT, AND EXECUTE OPERATIONS.
  3673					
  3674	104364	104022			.SM:	TTITRM
  3675	104366	104100				SM			;DO THE EMT
  3676	104370	103476				BCS	.XCTER
  3677	104372	000772				BR	.PLX
  3678					
  3679					;CACHE INVALIDATE
  3680					
  3681	104374	012700	104420		.CI:	MOV	#$$CI,R0
  3682					
  3683	104400	104022			.CIF:	TTITRM
  3684	104402	104226				DFLEGAL			;FUNCTION LEGAL ?
  3685	104404	104101				EXCT
  3686	104406	103467				 BCS	.XCTER		;FAILED
  3687	104410	000763				BR	.PLX		;OK, RETURN TO CONSOLE
  3688					
  3689					;CACHE FLUSH
  3690					
  3691	104412	012700	104425		.CF:	MOV	#$$CF,R0
  3692	104416	000770				BR	.CIF
  3693					
  3694					$$CI:	IO10	DATAI,CCA,,0	;INVALIDATE WITHOUT CORE UPDATE
  3695		000000				  .IIF B ,I=0
  3696						  .IIF NB ,I=
  3697		000000				  .IIF B ,XR=0
  3698						  .IIF NB ,XR=
  3699		000002					BLKO=2
  3700		000003					DATAO=3
  3701		000000					BLKI=0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 106
		CONS11 PAL[KL,SYS]	Page 25.1 	PDP-10 START/STOP FUNCTIONS

  3702		000001					DATAI=1
  3703		000004					CONO=4
  3704		000005					CONI=5
  3705		000006					CONSZ=6
  3706		000007					CONSO=7
  3707		000000					APR=0
  3708		000004					PI=4
  3709		000010					PAG=10
  3710		000014					CCA=14
  3711		000000					ADH=0
  3712		000000					ADL=0
  3713						  .IRPC AD1,0
  3714						  .IIF GE <ADL-10000>,ADH=ADL/10000
  3715						  ADL=10*<ADL&7777>+AD1
  3716						  .ENDM
  3717		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  3718		000000				  ADL=10*<ADL&7777>+0
  3719					$$CF:	IO10	BLKO,CCA,,0	;SWEEP CACHE, VALIDATING CORE
  3720		000000				  .IIF B ,I=0
  3721						  .IIF NB ,I=
  3722		000000				  .IIF B ,XR=0
  3723						  .IIF NB ,XR=
  3724		000002					BLKO=2
  3725		000003					DATAO=3
  3726		000000					BLKI=0
  3727		000001					DATAI=1
  3728		000004					CONO=4
  3729		000005					CONI=5
  3730		000006					CONSZ=6
  3731		000007					CONSO=7
  3732		000000					APR=0
  3733		000004					PI=4
  3734		000010					PAG=10
  3735		000014					CCA=14
  3736		000000					ADH=0
  3737		000000					ADL=0
  3738						  .IRPC AD1,0
  3739						  .IIF GE <ADL-10000>,ADH=ADL/10000
  3740						  ADL=10*<ADL&7777>+AD1
  3741						  .ENDM
  3742		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  3743		000000				  ADL=10*<ADL&7777>+0
  3744		104432			.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 107
		CONS11 PAL[KL,SYS]	Page 26 	PDP-10 START/STOP FUNCTIONS

  3745					;EXECUTE A PDP10 INSTRUCTION.
  3746					
  3747	104432	104077			.XCT:	TENSP			;STOP TEN
  3748	104434	103454				BCS	.XCTER		;DID NOT STOP PROPERLY
  3749					
  3750	104436	104016				TTISDL
  3751	104440	103404				 BCS	1$		;NON-NUMBER
  3752					
  3753	104442	104020				TTIS36
  3754					
  3755	104444	104101				EXCT
  3756	104446	103447				 BCS	.XCTER
  3757					
  3758	104450	000433				BR	.XCT2
  3759					
  3760	104452	122700	000120		1$:	CMPB	#'P,R0		;"EXP" = EXECUTE & PRINT
  3761	104456	001032				BNE	.XCT1
  3762					
  3763	104460	104020				TTIS36
  3764					
  3765	104462	104102				LODAR			;LOAD INTO AR
  3766	104464	103440				 BCS	.XCTER
  3767					
  3768		104466			SIPNT=.
  3769	104466	104044				PNORML
  3770	104470	104115				DFXCTT			;SET CONTINUE BUTTON
  3771	104472	000012				  CONBUT
  3772					
  3773	104474	104135			2$:	ECLOK			;CLOCK TO GET STARTED
  3774	104476	103002				 BCC	3$
  3775	104500	004137	141100			JSR	R1,$ECTIM
  3776					
  3777	104504	032777	001000	052636	3$:	BIT	#HALTLP,@.DIAG1
  3778	104512	001370				BNE	2$		;TILL WE LEAVE HALT LOOP
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 108
		CONS11 PAL[KL,SYS]	Page 27 	PDP-10 START/STOP FUNCTIONS

  3779	104514	104132				PNTCPU			;PRINT C-RAM & REGISTERS
  3780					
  3781	104516	104135			4$:	ECLOK			;CLOCK
  3782	104520	103002				 BCC	5$
  3783	104522	004137	141100			JSR	R1,$ECTIM
  3784					
  3785	104526	104132			5$:	PNTCPU			;& PRINT TILL BACK TO HALT LOOP
  3786					
  3787	104530	032777	001000	052612		BIT	#HALTLP,@.DIAG1
  3788	104536	001767				BEQ	4$
  3789					
  3790	104540	000137	100230		.XCT2:	JMP	$KONSL
  3791					
  3792	104544	122700	000124		.XCT1:	CMPB	#'T,R0		;"EXT" = EXECUTE & TRACE SETUP
  3793	104550	001012				BNE	.CNSER
  3794					
  3795	104552	104020				TTIS36
  3796					
  3797	104554	104102				LODAR			;LOAD INTO AR
  3798	104556	103403				 BCS	.XCTER
  3799					
  3800	104560	104115				DFXCTT			;SET CONTINUE BUTTON
  3801	104562	000012				  CONBUT
  3802					
  3803	104564	000765				BR	.XCT2
  3804					
  3805					.XCTER:	PMSG	<?UCODE HUNG>
  3806	104566	104025				  $PMSG
  3807	104570	145357				  $$CLIT
  3808	104572	000137	100004			JMP	$CNTLC
  3809					
  3810	104576	000137	102102		.CNSER:	JMP	$DFERR
  3811					
  3812					;BURST THE KL10 CLOCK
  3813					
  3814	104602	104226			.BU:	DFLEGAL			;FUNCTION LEGAL ?
  3815	104604	005037	152216			CLR	TENCLK		;TURN OFF CLOCKK IF ON
  3816	104610	104016				TTISDL
  3817	104612	103404				BCS	2$		;NO ARG, DO ONCE
  3818	104614	104011				TTIDEC
  3819	104616	103402				BCS	2$		;DO ONCE ANYWAY
  3820	104620	104131			1$:	BURST			;PERFORM BURST
  3821	104622	000746				BR	.XCT2
  3822	104624	012700	000001		2$:	MOV	#1,R0		;DO ONE BURST
  3823	104630	000773				BR	1$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 109
		CONS11 PAL[KL,SYS]	Page 28 	PDP-10 START/STOP FUNCTIONS

  3824					;SELECT CLOCK SOURCE
  3825					
  3826	104632	104016			.CS:	TTISDL
  3827	104634	103012				BCC	1$
  3828	104636	013700	157246			MOV	CLKDFL,R0
  3829						SR	R0,2
  3830		104646			.CSR=.
  3831	104646	042700	177774			BIC	#177774,R0
  3832	104652	104030				PNTNBR
  3833	104654	104031				PCRLF
  3834	104656	000137	100014			JMP	$CONSL
  3835					
  3836	104662	104017			1$:	TTISDO
  3837	104664	020027	000002			CMP	R0,#2
  3838	104670	003022				BGT	.CSRER
  3839					
  3840	104672	104054				SHIFTL
  3841	104674	000002				2
  3842	104676	042737	000014	157246		BIC	#14,CLKDFL	;CLEAR OLD SOURCE
  3843	104704	050037	157246		.CCMN1:	BIS	R0,CLKDFL	;SET NEW SOURCE
  3844	104710	104226			.CCMN:	DFLEGAL			;FUNCTION LEGAL ?
  3845	104712	005737	147670			TST	TENRUN
  3846	104716	001402				BEQ	1$
  3847	104720	104077				TENSP			;STOP TEN
  3848	104722	103721				BCS	.XCTER		;DID NOT STOP PROPERLY
  3849	104724	104141			1$:	DFWRTT			;WRITE TO CLOCK
  3850	104726	157246				CLKDFL
  3851	104730	000044				LDSEL
  3852	104732	000137	100230			JMP	$KONSL
  3853					
  3854	104736	000137	113356		.CSRER:	JMP	$PARA
  3855					
  3856					;SELECT CLOCK RATE
  3857					
  3858	104742	104016			.CR:	TTISDL
  3859	104744	103003				BCC	1$
  3860	104746	013700	157246			MOV	CLKDFL,R0
  3861	104752	000735				BR	.CSR
  3862					
  3863	104754	104017			1$:	TTISDO
  3864	104756	020027	000003			CMP	R0,#3
  3865	104762	003365				BGT	.CSRER
  3866					
  3867	104764	042737	000003	157246		BIC	#3,CLKDFL	;CLEAR OLD RATE
  3868	104772	000744				BR	.CCMN1
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 110
		CONS11 PAL[KL,SYS]	Page 29 	PDP-10 START/STOP FUNCTIONS

  3869					;PROCESSOR PARITY DISABLE
  3870					
  3871	104774	104022			.PD:	TTITRM
  3872	104776	005037	157262			CLR	PEBITS		;CLEAR PARITY ENABLE BITS
  3873	105002	000137	100014			JMP	$CONSL
  3874					
  3875					;PARITY ENABLED AND CLOCK ERROR STOP MESSAGES
  3876					
  3877	105006	   054		
  3878	105007	   040		
  3879	105010	   101		
  3880	105011	   122		
  3881	105012	   057		
  3882	105013	   101		
  3883	105014	   122		
  3884	105015	   130		
  3885	105016	   000		
  3886					$PEAR:	.ASCIZ	%, AR/ARX%
  3887	105017	   054		
  3888	105020	   040		
  3889	105021	   106		
  3890	105022	   115		
  3891	105023	   040		
  3892	105024	   120		
  3893	105025	   101		
  3894	105026	   122		
  3895	105027	   111		
  3896	105030	   124		
  3897	105031	   131		
  3898	105032	   000		
  3899					$PEFM:	.ASCIZ	%, FM PARITY%
  3900	105033	   054		
  3901	105034	   040		
  3902	105035	   103		
  3903	105036	   122		
  3904	105037	   101		
  3905	105040	   115		
  3906	105041	   040		
  3907	105042	   120		
  3908	105043	   101		
  3909	105044	   122		
  3910	105045	   111		
  3911	105046	   124		
  3912	105047	   131		
  3913	105050	   000		
  3914					$PECR:	.ASCIZ	%, CRAM PARITY%
  3915	105051	   054		
  3916	105052	   040		
  3917	105053	   104		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 111
		CONS11 PAL[KL,SYS]	Page 29.1 	PDP-10 START/STOP FUNCTIONS

  3918	105054	   122		
  3919	105055	   101		
  3920	105056	   115		
  3921	105057	   040		
  3922	105060	   120		
  3923	105061	   101		
  3924	105062	   122		
  3925	105063	   111		
  3926	105064	   124		
  3927	105065	   131		
  3928	105066	   000		
  3929					$PEDR:	.ASCIZ	%, DRAM PARITY%
  3930	105067	   054		
  3931	105070	   040		
  3932	105071	   106		
  3933	105072	   123		
  3934	105073	   040		
  3935	105074	   120		
  3936	105075	   122		
  3937	105076	   117		
  3938	105077	   102		
  3939	105100	   105		
  3940	105101	   000		
  3941					$PEFS:	.ASCIZ	%, FS PROBE%
  3942		105102			.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 112
		CONS11 PAL[KL,SYS]	Page 30 	PDP-10 START/STOP FUNCTIONS

  3943					;PROCESSOR PARITY ENABLE
  3944					
  3945					;PARITY ENABLE BITS ARE CODED AS FOLLOWS:
  3946					; 	AR/ARX, FM, CRAM, DRAM, FS
  3947					;	0 = PARITY DISABLED
  3948					;	37 WOULD = ALL ENABLED
  3949					
  3950	105102	104016			.PE:	TTISDL
  3951	105104	103043				 BCC	1$
  3952					
  3953					20$:	PMSG	<ENABLED: >
  3954	105106	104025				  $PMSG
  3955	105110	145373				  $$CLIT
  3956	105112	013701	157262			MOV	PEBITS,R1	;PRINT PARITY ENABLE BITS
  3957	105116	010100				MOV	R1,R0
  3958	105120	104047				PNTODT
  3959	105122	000002				  2
  3960	105124	032701	000020		10$:	BIT	#20,R1
  3961	105130	001402				BEQ	11$
  3962	105132	104025				$PMSG
  3963	105134	105006				  $PEAR			;AR/ARX PAGE FAIL
  3964	105136	032701	000010		11$:	BIT	#10,R1
  3965	105142	001402				BEQ	12$
  3966	105144	104025				$PMSG
  3967	105146	105017				  $PEFM			;FM PARITY
  3968	105150	032701	000004		12$:	BIT	#4,R1
  3969	105154	001402				BEQ	13$
  3970	105156	104025				$PMSG
  3971	105160	105033				  $PECR			;CRAM PARITY
  3972	105162	032701	000002		13$:	BIT	#2,R1
  3973	105166	001402				BEQ	14$
  3974	105170	104025				$PMSG
  3975	105172	105051				  $PEDR			;DRAM PARITY
  3976	105174	032701	000001		14$:	BIT	#1,R1
  3977	105200	001402				BEQ	15$
  3978	105202	104025				$PMSG
  3979	105204	105067				  $PEFS			;FS PROBE
  3980	105206	104031			15$:	PCRLF
  3981	105210	000137	100014		3$:	JMP	$CONSL
  3982					
  3983	105214	104017			1$:	TTISDO
  3984	105216	020027	000037			CMP	R0,#37
  3985	105222	003245				BGT	.CSRER
  3986	105224	010037	157262			MOV	R0,PEBITS	;SAVE
  3987	105230	000726				BR	20$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 113
		CONS11 PAL[KL,SYS]	Page 31 	PDP-10 START/STOP FUNCTIONS

  3988					;MICRO-CODE SYNC MARK ROUTINES
  3989					
  3990	105232	012705	777777		.MU:	MOV	#-1,R5		;MICRO UNMARK
  3991	105236	000401				BR	.MMC
  3992					
  3993	105240	005005			.MM:	CLR	R5		;MICRO MARK
  3994					
  3995	105242	104226			.MMC:	DFLEGAL			;FUNCTION LEGAL ?
  3996	105244	104021				TTICRA			;GET C-RAM ADDRESS
  3997	105246	010037	147724			MOV	R0,$ECADR
  3998					
  3999	105252	104074				RCRAM			;READ C-RAM
  4000					
  4001	105254	005705				TST	R5
  4002	105256	001004				BNE	3$
  4003	105260	052760	000020	000004		BIS	#20,4(R0)	;SET MARK BIT
  4004	105266	000403				BR	.MMX
  4005	105270	042760	000020	000004	3$:	BIC	#20,4(R0)	;CLEAR MARK BIT
  4006					
  4007	105276	010001			.MMX:	MOV	R0,R1
  4008	105300	013700	147724			MOV	$ECADR,R0
  4009	105304	104073				WCRAM			;WRITE C-RAM BACK
  4010	105306	000137	100230			JMP	$KONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 114
		CONS11 PAL[KL,SYS]	Page 32 	PDP-10 START/STOP FUNCTIONS

  4011					;MICRO-CODE TIME FIELD CHANGE ROUTINE
  4012					
  4013	105312	104226			.MT:	DFLEGAL			;FUNCTION LEGAL ?
  4014	105314	104021				TTICRA
  4015	105316	010037	147724			MOV	R0,$ECADR
  4016					
  4017	105322	104017				TTISDO
  4018	105324	020027	000003			CMP	R0,#3		;TIME FIELD IS 0-3
  4019	105330	003202				BGT	.CSRER
  4020	105332	010005				MOV	R0,R5
  4021					
  4022	105334	013700	147724			MOV	$ECADR,R0
  4023	105340	104074				RCRAM			;READ C-RAM
  4024	105342	042710	000012			BIC	#12,(R0)	;CLEAR OLD TIME
  4025	105346	005004				CLR	R4
  4026	105350	032705	000002			BIT	#2,R5
  4027	105354	001402				BEQ	1$
  4028	105356	052704	000010			BIS	#10,R4
  4029	105362	032705	000001		1$:	BIT	#1,R5
  4030	105366	001402				BEQ	2$
  4031	105370	052704	000002			BIS	#2,R4
  4032	105374	050410			2$:	BIS	R4,(R0)		;SET NEW TIME
  4033	105376	000737				BR	.MMX
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 115
		CONS11 PAL[KL,SYS]	Page 33 	PDP-10 START/STOP FUNCTIONS

  4034					;CACHE ENABLE
  4035					
  4036					;CACHE ENABLE BITS ARE CODED AS FOLLOWS:
  4037					;	10 = CACHE 0
  4038					;	 4 = CACHE 1
  4039					;	 2 = CACHE 2
  4040					;	 1 = CACHE 3
  4041					;	17 SIGNIFIES ALL CACHES ENABLED
  4042					
  4043	105400	104016			.CE:	TTISDL			;GET ENABLE CODE
  4044	105402	103411				BCS	20$		;CR, PRINT ENABLE
  4045	105404	104017			1$:	TTISDO
  4046	105406	020027	000017			CMP	R0,#17		;ENABLE IS 0 TO 17
  4047	105412	003003				BGT	2$
  4048	105414	010037	157252			MOV	R0,CLKDFL+4	;PUT IN CLOCK DEFAULT PARAMETER WORD
  4049	105420	000402				BR	20$
  4050	105422	000137	113452		2$:	JMP	$PARAM
  4051					
  4052					20$:	PMSG	<CACHES ENABLED: >
  4053	105426	104025				  $PMSG
  4054	105430	145405				  $$CLIT
  4055	105432	013701	157252			MOV	CLKDFL+4,R1
  4056	105436	010100				MOV	R1,R0
  4057	105440	104047				PNTODT			;PRINT CODE
  4058	105442	000002				  2
  4059	105444	005002			21$:	CLR	R2
  4060	105446	032701	000010			BIT	#10,R1		;CACHE 0 ENABLED ?
  4061	105452	001402				BEQ	22$
  4062	105454	004737	105532			JSR	PC,.CEP
  4063					
  4064	105460	005202			22$:	INC	R2
  4065	105462	032701	000004			BIT	#4,R1		;CACHE 1 ENABLED ?
  4066	105466	001402				BEQ	23$
  4067	105470	004737	105532			JSR	PC,.CEP
  4068					
  4069	105474	005202			23$:	INC	R2
  4070	105476	032701	000002			BIT	#2,R1		;CACHE 2 ENABLED ?
  4071	105502	001402				BEQ	24$
  4072	105504	004737	105532			JSR	PC,.CEP
  4073					
  4074	105510	005202			24$:	INC	R2
  4075	105512	032701	000001			BIT	#1,R1		;CACHE 3 ENABLED ?
  4076	105516	001402				BEQ	25$
  4077	105520	004737	105532			JSR	PC,.CEP
  4078					
  4079	105524	104031			25$:	PCRLF
  4080	105526	000137	100014			JMP	$CONSL
  4081					
  4082					.CEP:	PMSG	<, CACHE >
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 116
		CONS11 PAL[KL,SYS]	Page 33.1 	PDP-10 START/STOP FUNCTIONS

  4083	105532	104025				  $PMSG
  4084	105534	145426				  $$CLIT
  4085	105536	010200				MOV	R2,R0
  4086	105540	104030				PNTNBR			;PRINT CACHE ENABLE DIGIT
  4087	105542	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 117
		CONS11 PAL[KL,SYS]	Page 34 	PDP-10 START/STOP FUNCTIONS

  4088					;AC BLOCK SELECTION
  4089					;SETS UP "PAGDFL" WORD USED BY "DATAO PAG,0"
  4090					;DURING "STD,STM,STL & DDT" START COMMANDS
  4091					;SAME "PAGDFL" WORD USED BY "DATAO PAG,20"
  4092					;DURING AC BLOCK SELECTION COMMAND
  4093					
  4094	105544	104226			.AC:	DFLEGAL
  4095	105546	012705	157256			MOV	#PAGDFL+2,R5
  4096	105552	104016				TTISDL			;ALLOW FOR "ACBLK" OR "AC BLK"
  4097	105554	103103				 BCC	5$		;NUMBER
  4098	105556	122700	000102			CMPB	#'B,R0
  4099	105562	001100				BNE	5$
  4100	105564	104005				TTICHR
  4101	105566	122700	000114			CMPB	#'L,R0
  4102	105572	001074				BNE	5$
  4103	105574	104005				TTICHR
  4104	105576	122700	000113			CMPB	#'K,R0
  4105	105602	001070				BNE	5$
  4106					
  4107	105604	104016				TTISDL			;ANY NUMBER ?
  4108	105606	103424				 BCS	4$		;NO, PRINT PRESENT SELECTION
  4109					
  4110	105610	104017				TTISDO			;GET SELECTION DIGIT
  4111	105612	020027	000007			CMP	R0,#7		;MUST BE 0 TO 7
  4112	105616	003062				BGT	5$
  4113	105620	001450				BEQ	3$		;IF BLK #7, GIVE UCODE WARNING
  4114					
  4115					1$:	PUSH	R0
  4116						PMSG	<PREV AC BLK >
  4117	105624	104025				  $PMSG
  4118	105626	145437				  $$CLIT
  4119	105630	011500				MOV	(R5),R0
  4120	105632	104053				SHIFTR
  4121	105634	000013				  11.
  4122	105636	104030				PNTNBR
  4123	105640	104214				PNTCI
  4124	105642	020054				", 
  4125						POP	R0
  4126	105646	104054				SHIFTL			;PLACE SELECTION DIGIT IN BITS 6-8
  4127	105650	000013				  11.
  4128	105652	042715	034000			BIC	#034000,(R5)
  4129	105656	050015				BIS	R0,(R5)		;INSERT IN PAGE DEFAULT WORD
  4130					4$:	PMSG	<SELECTED AC BLK >
  4131	105660	104025				  $PMSG
  4132	105662	145454				  $$CLIT
  4133	105664	011500				MOV	(R5),R0		;PRINT PRESENT AC BLOCK SELECTION
  4134	105666	104053				SHIFTR
  4135	105670	000013				  11.
  4136	105672	104030				PNTNBR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 118
		CONS11 PAL[KL,SYS]	Page 34.1 	PDP-10 START/STOP FUNCTIONS

  4137	105674	104031				PCRLF
  4138	105676	104104				EXAMT			;SAVE MEM LOCATION 20
  4139	105700	000020				  20
  4140	105702	147566				  $SAV20
  4141	105704	103423				BCS	6$
  4142	105706	104110				DPOSVT			;PUT DATAO PAG ARGUMENT IN 20
  4143	105710	000020				  20
  4144	105712	157254				  PAGDFL
  4145	105714	103417				BCS	6$
  4146	105716	012700	105770			MOV	#DATPAG,R0
  4147	105722	104101				EXCT			;EXECUTE DATAO PAG
  4148	105724	103413				 BCS	6$
  4149	105726	104110				DPOSVT			;RESTORE 20
  4150	105730	000020				  20
  4151	105732	147566				  $SAV20
  4152	105734	103407				BCS	6$
  4153	105736	000137	100014			JMP	$CONSL
  4154					
  4155					3$:	PUSH	R0
  4156						PMSG	<UCODE BLK\>
  4157	105744	104025				  $PMSG
  4158	105746	145475				  $$CLIT
  4159						POP	R0
  4160	105752	000723				BR	1$
  4161					
  4162					6$:	PMSG	<?SELECTION ERR>
  4163	105754	104025				  $PMSG
  4164	105756	145510				  $$CLIT
  4165	105760	000137	100004			JMP	$CNTLC
  4166					
  4167	105764	000137	113452		5$:	JMP	$PARAM		;ERROR
  4168					
  4169					DATPAG:	IO10	DATAO,PAG,,20	;SELECT AC BLOCK
  4170		000000				  .IIF B ,I=0
  4171						  .IIF NB ,I=
  4172		000000				  .IIF B ,XR=0
  4173						  .IIF NB ,XR=
  4174		000002					BLKO=2
  4175		000003					DATAO=3
  4176		000000					BLKI=0
  4177		000001					DATAI=1
  4178		000004					CONO=4
  4179		000005					CONI=5
  4180		000006					CONSZ=6
  4181		000007					CONSO=7
  4182		000000					APR=0
  4183		000004					PI=4
  4184		000010					PAG=10
  4185		000014					CCA=14
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 119
		CONS11 PAL[KL,SYS]	Page 34.2 	PDP-10 START/STOP FUNCTIONS

  4186		000000					ADH=0
  4187		000000					ADL=0
  4188						  .IRPC AD1,20
  4189						  .IIF GE <ADL-10000>,ADH=ADL/10000
  4190						  ADL=10*<ADL&7777>+AD1
  4191						  .ENDM
  4192		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4193		000002				  ADL=10*<ADL&7777>+2
  4194		770002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4195		000020				  ADL=10*<ADL&7777>+0
  4196		105776			.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 120
		CONS11 PAL[KL,SYS]	Page 35 	PDP-10 START/STOP FUNCTIONS

  4197					;START PDP10 AT ADDRESS SPECIFIED AS LOWER 18 BITS OF 36-BIT ARGUMENT.
  4198					
  4199	105776	104226			$ST:	DFLEGAL			;PDP-10 MUST BE STOPPED BEFORE YOU CAN START IT
  4200	106000	104016				TTISDL
  4201	106002	103472				 BCS	4$		;NON-NUMBER
  4202	106004	104020				TTIS36
  4203		106006			$$ST=.
  4204	106006	005005				CLR	R5
  4205	106010	012701	157222		5$:	MOV	#$$STJRS,R1
  4206	106014	112021				MOVB	(R0)+,(R1)+
  4207	106016	112021				MOVB	(R0)+,(R1)+
  4208	106020	142711	000003			BICB	#3,(R1)		;CLEAR BITS 18-19
  4209	106024	151011				BISB	(R0),(R1)	;SET LAST TWO BITS
  4210					
  4211	106026	005705			3$:	TST	R5		;ADDRESS START?
  4212	106030	001442				BEQ	11$		;YES. DO JUST A JRST
  4213	106032	104100				SM			;START MACHINE.  RESET MACHINE
  4214	106034	103502				 BCS	$STERR
  4215	106036	104110				DPOSVT			;DEPOSIT "DATAO PAG,0" ARGUMENT
  4216	106040	000000				  0			;IN AC0, SELECTS CURRENT AC USAGE
  4217	106042	157254				  PAGDFL
  4218	106044	103476				 BCS	$STERR
  4219	106046	104055				SETFLG			;SET TEN RUN FLAG
  4220	106050	147670				  TENRUN
  4221	106052	005037	147422		.IIF DF SAILVR,	CLR	SWTDEP	;DISABLE AUTO-DEPOSIT!
  4222	106056	104145				TENSW			;DEPOSIT PDP-10 SWITCHES
  4223	106060	103002				 BCC	32$
  4224	106062	000137	110270			JMP	C10SWE		;SWITCH ERROR
  4225	106066	012701	000004		32$:	MOV	#4.,R1
  4226	106072	012700	106246			MOV	#$STTB1,R0
  4227					1$:	PUSH	R0
  4228	106100	104101				EXCT			;EXECUTE A TEN INSTR
  4229	106102	103457				 BCS	$STERR
  4230						POP	R0
  4231	106106	062700	000005			ADD	#5,R0
  4232	106112	005301				DEC	R1
  4233	106114	001370				BNE	1$		;DO ANOTHER
  4234	106116	004737	122044			JSR	PC,$TI36C	;ZERO SELECTED AC BLOCK
  4235	106122	012701	147462			MOV	#$DRAM,R1
  4236	106126	012700	000020			MOV	#16.,R0		;FROM AC0 TO AC17
  4237	106132	104112				D10ZRO			;NECESSARY FOR FM PARITY
  4238	106134	103442				 BCS	$STERR
  4239	106136	012700	157222		11$:	MOV	#$$STJRS,R0
  4240	106142	104101				EXCT			;EXECUTE JRST TO START ADR
  4241	106144	103436				 BCS	$STERR
  4242	106146	005037	150022			CLR	TENTTY		;TURN OFF "TENCHR" ROUTINE
  4243	106152	004737	115156			JSR	PC,$CMCLR	;CLEAR COMMON STORAGE
  4244	106156	012737	000144	152206		MOV	#100.,$ENDCT	;REPORT EOP EVERY 100
  4245	106164	000137	104002			JMP	$RNN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 121
		CONS11 PAL[KL,SYS]	Page 35.1 	PDP-10 START/STOP FUNCTIONS

  4246					
  4247	106170	122700	000104		4$:	CMPB	#'D,R0		;IF "STD", START 10 DIAGNOSTIC
  4248	106174	001006				BNE	6$
  4249	106176	012700	100064			MOV	#TDIAG,R0
  4250	106202	104022			7$:	TTITRM
  4251		106204			$$$ST=.
  4252	106204	012705	777777			MOV	#-1,R5
  4253	106210	000677				BR	5$
  4254					
  4255	106212	122700	000114		6$:	CMPB	#'L,R0		;IF "STL", START PDP-10 LOADER
  4256	106216	001003				BNE	8$
  4257	106220	012700	100074			MOV	#TLDR,R0
  4258	106224	000766				BR	7$
  4259					
  4260	106226	122700	000115		8$:	CMPB	#'M,R0		;IF "STM", START PDP-10 MONITOR
  4261	106232	001017				BNE	.CNERR		;IF NONE, ERROR (DON'T START AT THE LAST START ADDR)
  4262	106234	012700	100100			MOV	#TMON,R0
  4263	106240	000760				BR	7$
  4264					
  4265	106242	000137	104566		$STERR:	JMP	.XCTER
  4266					
  4267		000541				HRRI=541
  4268		000515				HRLZI=515
  4269		000254				JRST=254
  4270		000200				DTE=200
  4271					
  4272					$STTB1:	IO10	CONO,APR,,267760	;RESET APR
  4273		000000				  .IIF B ,I=0
  4274						  .IIF NB ,I=
  4275		000000				  .IIF B ,XR=0
  4276						  .IIF NB ,XR=
  4277		000002					BLKO=2
  4278		000003					DATAO=3
  4279		000000					BLKI=0
  4280		000001					DATAI=1
  4281		000004					CONO=4
  4282		000005					CONI=5
  4283		000006					CONSZ=6
  4284		000007					CONSO=7
  4285		000000					APR=0
  4286		000004					PI=4
  4287		000010					PAG=10
  4288		000014					CCA=14
  4289		000000					ADH=0
  4290		000000					ADL=0
  4291						  .IRPC AD1,267760
  4292						  .IIF GE <ADL-10000>,ADH=ADL/10000
  4293						  ADL=10*<ADL&7777>+AD1
  4294						  .ENDM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 122
		CONS11 PAL[KL,SYS]	Page 35.2 	PDP-10 START/STOP FUNCTIONS

  4295		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4296		000002				  ADL=10*<ADL&7777>+2
  4297		770002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4298		000026				  ADL=10*<ADL&7777>+6
  4299		770026				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4300		000267				  ADL=10*<ADL&7777>+7
  4301		770267				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4302		002677				  ADL=10*<ADL&7777>+7
  4303		772677				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4304		026776				  ADL=10*<ADL&7777>+6
  4305		000002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4306		067760				  ADL=10*<ADL&7777>+0
  4307						IO10	CONO,PI,,10000		;PI SYSTEM CLEAR
  4308		000000				  .IIF B ,I=0
  4309						  .IIF NB ,I=
  4310		000000				  .IIF B ,XR=0
  4311						  .IIF NB ,XR=
  4312		000002					BLKO=2
  4313		000003					DATAO=3
  4314		000000					BLKI=0
  4315		000001					DATAI=1
  4316		000004					CONO=4
  4317		000005					CONI=5
  4318		000006					CONSZ=6
  4319		000007					CONSO=7
  4320		000000					APR=0
  4321		000004					PI=4
  4322		000010					PAG=10
  4323		000014					CCA=14
  4324		000000					ADH=0
  4325		000000					ADL=0
  4326						  .IRPC AD1,10000
  4327						  .IIF GE <ADL-10000>,ADH=ADL/10000
  4328						  ADL=10*<ADL&7777>+AD1
  4329						  .ENDM
  4330		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4331		000001				  ADL=10*<ADL&7777>+1
  4332		770001				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4333		000010				  ADL=10*<ADL&7777>+0
  4334		770010				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4335		000100				  ADL=10*<ADL&7777>+0
  4336		770100				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4337		001000				  ADL=10*<ADL&7777>+0
  4338		771000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4339		010000				  ADL=10*<ADL&7777>+0
  4340						IO10	CONO,PAG,,0		;PAGING SYSTEM CLEAR
  4341		000000				  .IIF B ,I=0
  4342						  .IIF NB ,I=
  4343		000000				  .IIF B ,XR=0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 123
		CONS11 PAL[KL,SYS]	Page 35.3 	PDP-10 START/STOP FUNCTIONS

  4344						  .IIF NB ,XR=
  4345		000002					BLKO=2
  4346		000003					DATAO=3
  4347		000000					BLKI=0
  4348		000001					DATAI=1
  4349		000004					CONO=4
  4350		000005					CONI=5
  4351		000006					CONSZ=6
  4352		000007					CONSO=7
  4353		000000					APR=0
  4354		000004					PI=4
  4355		000010					PAG=10
  4356		000014					CCA=14
  4357		000000					ADH=0
  4358		000000					ADL=0
  4359						  .IRPC AD1,0
  4360						  .IIF GE <ADL-10000>,ADH=ADL/10000
  4361						  ADL=10*<ADL&7777>+AD1
  4362						  .ENDM
  4363		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4364		000000				  ADL=10*<ADL&7777>+0
  4365						IO10	DATAO,PAG,,0		;USER BASE CLEAR & AC SELECT
  4366		000000				  .IIF B ,I=0
  4367						  .IIF NB ,I=
  4368		000000				  .IIF B ,XR=0
  4369						  .IIF NB ,XR=
  4370		000002					BLKO=2
  4371		000003					DATAO=3
  4372		000000					BLKI=0
  4373		000001					DATAI=1
  4374		000004					CONO=4
  4375		000005					CONI=5
  4376		000006					CONSZ=6
  4377		000007					CONSO=7
  4378		000000					APR=0
  4379		000004					PI=4
  4380		000010					PAG=10
  4381		000014					CCA=14
  4382		000000					ADH=0
  4383		000000					ADL=0
  4384						  .IRPC AD1,0
  4385						  .IIF GE <ADL-10000>,ADH=ADL/10000
  4386						  ADL=10*<ADL&7777>+AD1
  4387						  .ENDM
  4388		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  4389		000000				  ADL=10*<ADL&7777>+0
  4390		106272			.EVEN
  4391	106272	000137	113356		.CNERR:	JMP	$PARA
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 124
		CONS11 PAL[KL,SYS]	Page 36 	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS

  4392					.SBTTL	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS
  4393					
  4394	106276	012705	147704		.DP:	MOV	#.DPXAD,R5
  4395	106302	104016				TTISDL
  4396	106304	103426				 BCS	.DPS
  4397	106306	104020				TTIS36
  4398	106310	012025				MOV	(R0)+,(R5)+	;LOW ADDRESS
  4399	106312	011015				MOV	(R0),(R5)	;HIGH ADDRESS
  4400	106314	005745			.DPNX1:	TST	-(R5)
  4401					
  4402	106316	104020			.DPCOM:	TTIS36			;GET DATA
  4403	106320	010501				MOV	R5,R1		;PTR TO ADR
  4404	106322	004737	106366			JSR	PC,$TENRN
  4405	106326	104105				DPOS			;DO IT
  4406	106330	103402				 BCS	.DPCM1
  4407	106332	000137	100230		$VBX:	JMP	$KONSL
  4408					
  4409					.DPCM1:	PMSG	<?DM>
  4410	106336	104025				  $PMSG
  4411	106340	145527				  $$CLIT
  4412	106342	004137	141104			JSR	R1,$DFTM1
  4413					
  4414	106346	012705	147704		.DPNX:	MOV	#.DPXAD,R5
  4415	106352	062725	000001			ADD	#1,(R5)+	;BUMP LOW
  4416	106356	005515				ADC	(R5)		;CARRY TO HIGH
  4417	106360	000755				BR	.DPNX1
  4418					
  4419	106362	102755			.DPS:	BVS	.DPCOM		;COLON, USE PRESENT ADDRESS
  4420	106364	000742				BR	.CNERR
  4421					
  4422	106366	032777	004000	050754	$TENRN:	BIT	#ERRSTP,@.DIAG1	;TEN CLOCK RUNNING ?
  4423	106374	001402				BEQ	1$		;YES, OK
  4424	106376	000137	107566			JMP	TENCERR		;NO, REPORT IT
  4425	106402	000207			1$:	RTS	PC
  4426					
  4427	106404	104022			$VB:	TTITRM
  4428	106406	005737	147564			TST VRBFLG
  4429	106412	001405				BEQ $VB1
  4430	106414	005037	147564			CLR VRBFLG
  4431					PMSG <CONCISE TYPEOUT
  4432					>
  4433	106420	104025				  $PMSG
  4434	106422	145533				  $$CLIT
  4435	106424	000742				BR $VBX
  4436					
  4437	106426	104055			$VB1:	SETFLG
  4438	106430	147564				 VRBFLG
  4439					PMSG <VERBOSE TYPEOUT
  4440					>
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 125
		CONS11 PAL[KL,SYS]	Page 36.1 	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS

  4441	106432	104025				  $PMSG
  4442	106434	145555				  $$CLIT
  4443	106436	000735				BR $VBX
  4444					
  4445	106440	104022			$KA:	TTITRM
  4446	106442	004737	110540			JSR PC,KASET		;ENABLE KASIM
  4447	106446	000731				BR $VBX
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 126
		CONS11 PAL[KL,SYS]	Page 37 	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS

  4448					;MEMORY ZERO
  4449					;  "MZ ADR,COUNT"
  4450					
  4451	106450	104226			.MZ:	DFLEGAL 		;FUNCTION LEGAL ?
  4452	106452	104020				TTIS36 			;INPUT PDP-10 START ADDRESS
  4453	106454	013737	147462	147540		MOV	$DRAM,MMDAT	;SAVE IT
  4454	106462	013737	147464	147542		MOV	$DRAM+2,MMDAT+2
  4455	106470	012701	147540			MOV	#MMDAT,R1	;POINTER FOR D10ZRO
  4456	106474	104020				TTIS36			;INPUT NUMBER OF PDP-10 WORDS
  4457	106476	103437				 BCS	1$
  4458	106500	013702	147464			MOV	$DRAM+2,R2	;PICK UP NUMBER OF 64K MOBIES
  4459	106504	001425				BEQ	2$
  4460	106506	100004				BPL	4$
  4461	106510	012702	000010			MOV	#XMEMSZ/64.,R2	;MZ 0,-1.  DON'T TRY TO CLEAR
  4462	106514	005037	147462			CLR	$DRAM		; 4096 MILLION WORDS.
  4463	106520	005000			4$:	CLR	R0		;CLEAR ONE SMALL MOBY
  4464	106522	104112				D10ZRO
  4465	106524	103430				 BCS	3$
  4466	106526	004737	120670			JSR	PC,$TIRDY	;ALLOW ↑C IN THIS SLOW LOOP
  4467	106532	103406				BCS	69$
  4468	106534	123727	147744	000003		CMPB	$TICHR,#CNTRLC
  4469	106542	001002				BNE	69$
  4470	106544	000137	120524			JMP	$TICC		;↑C, ABORT
  4471					
  4472	106550	005237	147542		69$:	INC	MMDAT+2		;BUMP ADDRESS
  4473	106554	005302				DEC	R2
  4474	106556	003360				BGT	4$
  4475	106560	013700	147462		2$:	MOV	$DRAM,R0	;CLEAR FINAL FRACTIONAL MOBY
  4476	106564	001402				BEQ	5$		;EXACT MULTIPLE OF 64K
  4477	106566	104112				D10ZRO 			;ZERO MEMORY
  4478	106570	103406				 BCS	3$
  4479					
  4480	106572	000137	100230		5$:	JMP	$KONSL
  4481					
  4482	106576	012737	000001	147462	1$:	MOV	#1,$DRAM	;NO COUNT SPECIFIED
  4483	106604	000765				BR	2$		;SO CLEAR ONE WORD
  4484					
  4485					3$:	PMSG	<?MZ>
  4486	106606	104025				  $PMSG
  4487	106610	145577				  $$CLIT
  4488	106612	004137	141104			JSR	R1,$DFTM1
  4489	106616	000137	107030			JMP	$RUNLP
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 127
		CONS11 PAL[KL,SYS]	Page 38 	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS

  4490	106622	012705	147704		.EXM:	MOV	#.DPXAD,R5
  4491	106626	005003				CLR	R3
  4492	106630	104016				TTISDL
  4493	106632	103456				 BCS	.EXMSP		;NON-NUMBER
  4494	106634	104020				TTIS36			;GET PDP-10 ADDRESS
  4495	106636	012025				MOV	(R0)+,(R5)+	;SAVE LOW 16 BITS
  4496	106640	011015				MOV	(R0),(R5)	;SAVE HIGH BITS
  4497	106642	005745				TST	-(R5)
  4498	106644	104015				TTIBRK			;GET BREAK
  4499	106646	103611				 BCS	.CNERR
  4500	106650	122700	000054			CMPB	#',,R0
  4501	106654	001004				BNE	.EXCOM
  4502	106656	005103				COM	R3		;COMMA, MULTIPLE PRINT
  4503	106660	104044				PNORML
  4504	106662	104020				TTIS36			;GET ENDING ADDRESS
  4505	106664	011004				MOV	(R0),R4		;SAVE LOW 16 BITS
  4506					
  4507	106666	010500			.EXCOM:	MOV	R5,R0
  4508	106670	004737	106366			JSR	PC,$TENRN
  4509	106674	104103				EXAM
  4510	106676	103424				 BCS	3$
  4511	106700	105737	147732		5$:	TSTB	RPTFLG
  4512	106704	001017				BNE	1$
  4513	106706	010500				MOV	R5,R0
  4514	106710	104137				PNTADR
  4515	106712	104177				PNTBAK			;BACKUP POINTER TO WIPE OUT SPACE
  4516	106714	104033				PSLASH
  4517	106716	012700	147462			MOV	#$DRAM,R0
  4518	106722	104042				PNT36
  4519	106724	005703				TST	R3		;DOING MULTIPLE PRINT ?
  4520	106726	001405				BEQ	2$
  4521	106730	104031				PCRLF
  4522	106732	021504				CMP	(R5),R4
  4523	106734	001402				BEQ	2$
  4524	106736	005215				INC	(R5)		;INCREMENT LOW 16 BITS, 64K
  4525	106740	000752				BR	.EXCOM		;DO NEXT ADDRESS
  4526	106742	104031			2$:	PCRLF
  4527	106744	000137	100230		1$:	JMP	$KONSL
  4528					
  4529	106750	100404			3$:	BMI	4$
  4530						PMSG	<?EM>
  4531	106752	104025				  $PMSG
  4532	106754	145603				  $$CLIT
  4533	106756	004137	141104			JSR	R1,$DFTM1
  4534					
  4535	106762	104026			4$:	$PMSGR
  4536	106764	125116				  $EBPAR		;E-BUS PARITY ERROR
  4537	106766	000744				BR	5$
  4538					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 128
		CONS11 PAL[KL,SYS]	Page 38.1 	PDP-10 DEPOSIT AND EXAMINE CONSOLE FUNCTIONS

  4539	106770	102405			.EXMSP:	BVS	.EXMNX		;COLON OR SLASH, EXAMINE NEXT
  4540	106772	001335				BNE	.EXCOM		;NONE, EXAMINE SAME
  4541	106774	162725	000001			SUB	#1,(R5)+	;UPARROW, EXAMINE PREVIOUS
  4542	107000	005615				SBC	(R5)
  4543	107002	000405				BR	.EXMN1
  4544	107004	012705	147704		.EXMNX:	MOV	#.DPXAD,R5
  4545	107010	062725	000001			ADD	#1,(R5)+
  4546	107014	005515				ADC	(R5)
  4547	107016	005237	150716		.EXMN1:	INC	$INPTC
  4548	107022	005003				CLR	R3
  4549	107024	005745				TST	-(R5)
  4550	107026	000717				BR	.EXCOM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 129
		CONS11 PAL[KL,SYS]	Page 39 	CONSOLE IDLE RUN LOOP

  4551					.SBTTL	CONSOLE IDLE RUN LOOP
  4552					
  4553					;PROVIDES PDP-10 SUPPORT WHEN "TENRUN" SET
  4554					;AND ADDITIONALY PDP-10 MONITOR SUPPORT IF "MONMODE" SET
  4555					
  4556	107030	105737	147670		$RUNLP:	TSTB	TENRUN			;PDP-10 RUN TIME SUPPORT ?
  4557	107034	001002				BNE	1$			;JUMP IF YES
  4558	107036	000137	120150			JMP	$TTILIN			;NO, CONSOLE COMMAND INPUT
  4559					
  4560	107042	005037	147602		1$:	CLR	DDTTM2			;SETUP DDT MODE TIMEOUT
  4561	107046	032777	002000	050274	2$:	BIT	#KLRUN,@.DIAG1		;IS THE KL10 RUNNING?
  4562	107054	001002				BNE	3$			;YES.
  4563	107056	000137	107710			JMP	TENDEAD			;PDP-10 HALTED
  4564					
  4565	107062	032777	004000	050260	3$:	BIT	#ERRSTP,@.DIAG1		;PDP-10 CLOCK ERROR STOP ?
  4566	107070	001402				BEQ	31$			;NO.
  4567	107072	000137	107566			JMP	TENCERR			;YES, REPORT.
  4568					
  4569	107076	004737	110742		31$:	JSR	PC,C10COP		;PERFORM CLOCK OPERATIONS
  4570					.LIF DF %%QMP
  4571	107102	004737	137216			JSR	PC,SND10		;CHECK FOR QUEUED MESSAGE FOR 10
  4572					
  4573					.LIF NDF %%QMP
  4574						BIT	#TO11DB,@.STDTE		;IS PDP-10 REQUESTING SERVICE?
  4575					
  4576					.LIF DF %%QMP
  4577	107106	005737	157136			TST	T11DBF			;IS PDP-10 REQUESTING SERVICE?
  4578					
  4579	107112	001141				BNE	TENCMD			;YES.
  4580					
  4581	107114	005737	147666		5$:	TST	MONMODE			;MONITOR SUPPORT MODE ?
  4582	107120	001412				BEQ	20$			;NO
  4583					
  4584	107122	004737	120670		6$:	JSR	PC,$TIRDY		;TTY INPUT FLAG SET ?
  4585	107126	103024				BCC	MTTYIN			;YES, SEND CHAR TO 10
  4586					
  4587	107130	005737	147664		7$:	TST	MTTYOF			;TTY OUTPUT IN PROGRESS ?
  4588	107134	001744				BEQ	2$			;NO
  4589					
  4590	107136	004737	120776		8$:	JSR	PC,$TORDY		;TTY OUTPUT COMPLETED ?
  4591	107142	103057				BCC	MTTYOC			;YES, NOTIFY 10
  4592	107144	000740				BR	2$			;STAY IN MONITOR LOOP
  4593					
  4594	107146	005737	147740		20$:	TST	DDTFLG			;PDP-10 DDT INPUT MODE ?
  4595	107152	001405				BEQ	21$			;NO
  4596	107154	005337	147602		23$:	DEC	DDTTM2			;WAITED LONG ENOUGH ?
  4597	107160	001332				BNE	2$			;NOT YET
  4598	107162	005037	147740			CLR	DDTFLG			;YES, REVERT TO CONSOLE MODE
  4599					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 130
		CONS11 PAL[KL,SYS]	Page 39.1 	CONSOLE IDLE RUN LOOP

  4600	107166	004737	120670		21$:	JSR	PC,$TIRDY	;ANY TTY INPUT YET ?
  4601	107172	103725				BCS	2$		;NO, STAY IN RUN LOOP
  4602	107174	000137	120064			JMP	$TILRN		;YES, GO INPUT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 131
		CONS11 PAL[KL,SYS]	Page 40 	CONSOLE IDLE RUN LOOP

  4603				;MONITOR TELETYPE CHARACTER INPUT -- MTTYIN MTTYI0 MTTYI1 C10DN1 MTTYER MTTYOC MTTYO MTTYP MTTYX MTTYC MTTYCF $MC MTTYS C10DN
  4604					2
  4605					
  4606	107200	113700	147744		MTTYIN:	MOVB	$TICHR,R0	;GET INPUT CHAR
  4607	107204	120027	000030			CMPB	R0,#MSWCHR	;MONITOR TO "KLDCP" SWITCH CHAR ?
  4608	107210	001004				BNE	MTTYI1		;JUMP IF NOT.
  4609					MTTYI0:	PMSG	<\KLDCP\. ←>
  4610	107212	104025				  $PMSG
  4611	107214	145607				  $$CLIT
  4612	107216	000137	120150			JMP	$TTILIN		;READ ONE KLDCP COMMAND, REVERT TO RUN LOOP
  4613					
  4614	107222	010037	147446		MTTYI1:	MOV	R0,TENDAT
  4615	107226	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4616	107234	104110				DPOSVT			;SEND CHAR TO TEN
  4617	107236	000450				  $DTF11
  4618	107240	147446				  TENDAT
  4619	107242	103415				 BCS	MTTYER		;FAILED
  4620	107244	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4621	107252	104111				D10MON			;SET -1 TO 10 TTY INPUT FLAG
  4622	107254	000456				  $DTMTI
  4623	107256	103407				 BCS	MTTYER
  4624					
  4625	107260	005737	147660		C10DN1:	TST KASIM
  4626	107264	001261				BNE $RUNLP		;AVOID DINGING 10 IF KASIM
  4627	107266	012777	000400	050060	C10DN2:	MOV #INT10S,@.STDTE	;DING TEN
  4628	107274	000655				BR $RUNLP
  4629					
  4630	107276	000137	110100		MTTYER:	JMP	C10TIE
  4631					
  4632					;MONITOR TELETYPE OUTPUT COMPLETE
  4633					
  4634					MTTYOC:
  4635	107302	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4636	107310	104111				D10MON			;SET -1 TO 10 TTY OUTPUT DONE FLAG
  4637	107312	000455				  $DTMTD
  4638	107314	103770				 BCS	MTTYER
  4639	107316	005037	147664			CLR	MTTYOF		;CLEAR OUTPUT IN PROGRESS
  4640	107322	000756				BR	C10DN1
  4641					
  4642					;MONITOR TELETYPE OUTPUT ROUTINE
  4643					
  4644	107324	010500			MTTYO:	MOV	R5,R0		;GET OUTPUT CHAR
  4645	107326	042700	177400			BIC	#177400,R0	;STRIP TO 8 BITS, 10 DOES PARITY
  4646	107332	110037	147742			MOVB	R0,$TOCHR	;PRINT CHAR
  4647	107336	004737	121040			JSR	PC,$TOOUT
  4648	107342	104055			MTTYP:	SETFLG
  4649	107344	147664				  MTTYOF		;SET OUTPUT IN PROGRESS FLAG
  4650	107346	000467			MTTYX:	BR	C10DON		;ALLOW 10 TO CONTINUE
  4651					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 132
		CONS11 PAL[KL,SYS]	Page 40.1 	CONSOLE IDLE RUN LOOP

  4652					;MONITOR MODE CONTROL
  4653					
  4654	107350	104055			MTTYC:	SETFLG			;SET MONITOR MODE.
  4655	107352	147666				  MONMODE
  4656	107354	000772				BR	MTTYP		;SET OUTPUT IN PROGRESS, EVEN IF IT'S NOT.
  4657					
  4658	107356	005037	147666		MTTYCF:	CLR	MONMODE		;CLEAR
  4659	107362	000771				BR	MTTYX
  4660					
  4661	107364	104055			$MC:	SETFLG			;CONSOLE MONITOR CONTINUE
  4662	107366	147666				  MONMODE
  4663	107370	104055				SETFLG
  4664	107372	147670				  TENRUN		;ONLY WAY TO GET BACK FROM CONTROL C
  4665	107374	104055				SETFLG
  4666	107376	147614				  PRGRUN
  4667	107400	104055				SETFLG
  4668	107402	147664				  MTTYOF		;SET OUTPUT IN PROGRESS FLAG (even if not true)
  4669	107404	000550				BR	$$TDX
  4670					
  4671	107406	013700	147666		MTTYS:	MOV	MONMODE,R0	;SEND 10 MONITOR TTY STATE
  4672	107412	000137	110056			JMP	C10TIX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 133
		CONS11 PAL[KL,SYS]	Page 41 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4673					.SBTTL	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON
  4674					
  4675					TENCMD:
  4676	107416	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4677	107424	104104				EXAMT			;GET COMMAND CODE
  4678	107426	000451				  $DTCMD
  4679	107430	147574				  $ECMD
  4680	107432	103004				BCC	1$
  4681	107434	100002				BPL	2$		;EXAMINE FAILED
  4682	107436	104025				$PMSG
  4683	107440	125116				  $EBPAR		;E-BUS PARITY ERROR
  4684	107442	000443			2$:	BR	C10DNX
  4685					
  4686	107444	013705	147574		1$:	MOV	$ECMD,R5
  4687	107450	010501				MOV	R5,R1
  4688	107452	000301				SWAB	R1
  4689	107454	042701	177760			BIC	#177760,R1
  4690						SL	R1,1
  4691	107462	000171	107466			JMP	@CMD10T(R1)	;DISPATCH TO ROUTINE
  4692					
  4693	107466	107772			CMD10T:	C10TO		;TTY OUT
  4694	107470	110406				C10PRG		;PROGRAM CONTROL
  4695	107472	110574				C10CLK		;CLOCK
  4696	107474	110170				C10SW		;SWITCHES
  4697	107476	107772				C10TO		;TTY OUT
  4698	107500	110020				C10TI		;TTY IN
  4699	107502	110146				C10PNT		;PRINT CONTROL
  4700	107504	110344				C10DDT		;DDT INPUT MODE
  4701	107506	107324				MTTYO		;MONITOR TTY OUTPUT
  4702	107510	107350				MTTYC		;MONITOR TTY MODE CONTROL ON
  4703	107512	107356				MTTYCF		;MONITOR TTY MODE CONTROL OFF
  4704	107514	107406				MTTYS		;MONITOR TTY STATE
  4705	107516	137034				QMPCMD		;14 COMMAND FOR QMP (TO11 ITEM COUNT)
  4706	107520	107552				C10DNX		;15-17 UNUSED NOW
  4707	107522	107552				C10DNX
  4708	107524	107552				C10DNX
  4709					
  4710					C10DON:
  4711					.IIF NDF %%QMP,	MOV #INT11C,@.STDTE	;CLEAR DONG
  4712	107526	005037	157136		.IIF DF %%QMP,	CLR T11DBF		;CLEAR SOFTWARE DONG
  4713	107532	012737	004000	147424	.IIF NE EPTREL,	MOV #XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4714	107540	104111				D10MON		;SET -1 TO 10 "$DTFLG"
  4715	107542	000444				  $DTFLG	;DTE20 OPERATION COMPLETE FLAG
  4716	107544	103402				 BCS C10DNX	;next page.
  4717	107546	000137	107266			JMP C10DN2	;DONG 10, WAIT FOR NEXT COMMAND
  4718					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 134
		CONS11 PAL[KL,SYS]	Page 42 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4719					;C10DNX, TENCERR
  4720					
  4721					.IF NDF %%QMP
  4722					QMPCMD:			;COMMAND UNDEFINED IF NO QMP
  4723					.ENDC
  4724					
  4725	107552	005037	147670		C10DNX:	CLR	TENRUN
  4726						PMSG	<?10 CMD>
  4727	107556	104025				  $PMSG
  4728	107560	145622				  $$CLIT
  4729	107562	004137	141104			JSR	R1,$DFTM1	;FALLS INTO TENCERR
  4730	107566	005037	147670		TENCERR:CLR	TENRUN
  4731	107572	005037	147454			CLR	KLCLKR		;CLEAR TEN RUNNING
  4732	107576	104043				PFORCE
  4733						PMSG	<\KL10 CLOCK ERROR STOP>
  4734	107600	104025				  $PMSG
  4735	107602	145632				  $$CLIT
  4736	107604	104140				DFRDT
  4737	107606	000106				  106
  4738	107610	032777	000040	047504		BIT	#BIT5,@.DAT3	;FIELD SERVICE ?
  4739	107616	001402				BEQ	1$
  4740	107620	104025				$PMSG	
  4741	107622	105067				  $PEFS			;FS PROBE
  4742					
  4743	107624	104140			1$:	DFRDT
  4744	107626	000105				  105
  4745	107630	032777	000040	047464		BIT	#BIT5,@.DAT3	;FM PARITY ?
  4746	107636	001402				BEQ	2$
  4747	107640	104025				$PMSG	
  4748	107642	105017				  $PEFM			;FM PARITY
  4749					
  4750	107644	104140			2$:	DFRDT
  4751	107646	000104				  104
  4752	107650	032777	000040	047444		BIT	#BIT5,@.DAT3	;CRAM PARITY ?
  4753	107656	001402				BEQ	3$
  4754	107660	104025				$PMSG	
  4755	107662	105033				  $PECR			;CRAM PARITY
  4756					
  4757	107664	104140			3$:	DFRDT
  4758	107666	000103				  103
  4759	107670	032777	000040	047424		BIT	#BIT5,@.DAT3	;DRAM PARITY ?
  4760	107676	001402				BEQ	4$
  4761	107700	104025				$PMSG	
  4762	107702	105051				  $PEDR			;DRAM PARITY
  4763	107704	104132			4$:	PNTCPU			;PRINT ALL CPU INFORMATION
  4764	107706	000407				BR	$$TDX
  4765					
  4766	107710	005037	147670		TENDEAD: CLR	TENRUN		;CLEAR TEN RUN FLAG
  4767	107714	104043				PFORCE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 135
		CONS11 PAL[KL,SYS]	Page 42.1 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4768						PMSG	<\KL10 HALTED >
  4769	107716	104025				  $PMSG
  4770	107720	145661				  $$CLIT
  4771	107722	004737	107732			JSR	PC,$ALSTA
  4772	107726	000137	100014		$$TDX:	JMP	$CONSL
  4773					
  4774	107732	104055			$ALSTA:	SETFLG			;MAKE COMMAND ROUTINES INTO SUBROUTINES!
  4775	107734	147734				  ALLFLG
  4776	107736	004737	102642			JSR	PC,$ALLPC	;PRINT PC
  4777	107742	004737	102760			JSR	PC,$ALVMA	; AND VMA
  4778	107746	004737	103420			JSR	PC,$ALLPI	; AND PI
  4779						PMSG	< >
  4780	107752	104025				  $PMSG
  4781	107754	145677				  $$CLIT
  4782	107756	004737	103024			JSR	PC,$ALPCF	; AND PC FLAGS
  4783	107762	104031				PCRLF			;AND CRLF
  4784	107764	005037	147734			CLR	ALLFLG
  4785	107770	000207				RTS	PC
  4786					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 136
		CONS11 PAL[KL,SYS]	Page 43 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4787					;C10TO, C10TI
  4788					
  4789	107772	104055			C10TO:	SETFLG			;TEN TO ELEVEN FOR TYPEOUT
  4790	107774	150022				  TENTTY		;ALLOW "TENCHR" TO OPERATE
  4791	107776	012737	150032	150250		MOV	#$TNBUF,$TNPTC	;RESET 10 INPUT POINTERS
  4792	110004	012737	150032	150252		MOV	#$TNBUF,$TNPTR
  4793	110012	010501				MOV	R5,R1		;GET ASCII CHAR
  4794	110014	104154				PLDBUF			;PUT IN TTY OUT BUFFER
  4795	110016	000643				BR	C10DON
  4796					
  4797	110020	005037	147740		C10TI:	CLR	DDTFLG		;TTY INPUT TO 10
  4798	110024	022737	150254	150474		CMP	#$OUTBF,$OUTPT	;ANY OUTPUT WAITING ?
  4799	110032	001025				BNE	C10TIZ		;YES
  4800	110034	023737	150250	150252	11$:	CMP	$TNPTC,$TNPTR	;CURRENT BUFFER EMPTY ?
  4801	110042	002021				BGE	C10TIZ		;YES
  4802					
  4803	110044	013701	150250			MOV	$TNPTC,R1	;GET CHAR POINTER
  4804	110050	112100				MOVB	(R1)+,R0	;FETCH CHAR FROM 10 BUFFER
  4805	110052	010137	150250			MOV	R1,$TNPTC
  4806					
  4807	110056	010037	147446		C10TIX:	MOV	R0,TENDAT	;PUT CHAR IN 28-35 OF TEN WORD
  4808	110062	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4809	110070	104110				DPOSVT			;DEPOSIT IN FROM 11 WORD
  4810	110072	000450				  $DTF11
  4811	110074	147446				  TENDAT
  4812	110076	103213				 BCC	C10DON
  4813					C10TIE:	PMSG	<?10 TTI>
  4814	110100	104025				  $PMSG
  4815	110102	145701				  $$CLIT
  4816	110104	000473				BR	$$C1
  4817	110106	104004			C10TIZ:	TTILIN			;INPUT LINE FOR TEN
  4818	110110	103414				 BCS	5$		;NO RESPONSE
  4819	110112	012701	150032			MOV	#$TNBUF,R1
  4820	110116	104005			3$:	TTICHR			;GET CHAR FROM INPUT
  4821	110120	103402				 BCS	4$		;EMPTY
  4822	110122	110021				MOVB	R0,(R1)+	;PUT IN TEN BUFFER
  4823	110124	000774				BR	3$
  4824	110126	010137	150252		4$:	MOV	R1,$TNPTR	;UPDATE 10 EOL POINTER
  4825	110132	012737	150032	150250		MOV	#$TNBUF,$TNPTC	;SET PICKUP POINTER TO START
  4826	110140	000727				BR	C10TI		;GO SEND FIRST CHAR TO TEN
  4827	110142	005000			5$:	CLR	R0		;NULL = TIMEOUT
  4828	110144	000744				BR	C10TIX
  4829					
  4830	110146	010501			C10PNT:	MOV	R5,R1		;GET CONTROL BYTE
  4831	110150	042701	177400			BIC	#177400,R1
  4832	110154	010137	147760			MOV	R1,$FORCE	;PUT IN FORCE FLAG
  4833	110160	005037	147740			CLR	DDTFLG		;CLEAR DDT MODE
  4834	110164	000137	107526		C10X:	JMP	C10DON
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 137
		CONS11 PAL[KL,SYS]	Page 44 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4835					;Switch functions.  C10SW
  4836					
  4837	110170	010501			C10SW:	MOV	R5,R1 		;LOAD SWITCHES INTO FROM 11 WORD
  4838	110172	042701	177774			BIC	#177774,R1	;2 BIT SUBFUNCTION
  4839						SL	R1,1
  4840	110200	000171	110204			JMP	@C10SWT(R1)
  4841					
  4842	110204	110226			C10SWT:	C10SW0			;NORMAL SWITCH READ
  4843	110206	110214				C10SW1			;ENABLE AUTOMATIC DEPOSIT SWITCHES IN 10-MEMORY
  4844	110210	110222				C10SW2			;DISABLE AUTOMATIC DEPOSIT SWITCHES IN 10-MEMORY
  4845	110212	110226				C10SW0			;UNDEFINED.
  4846					
  4847	110214	104055			C10SW1:	SETFLG
  4848	110216	147422				 SWTDEP
  4849	110220	000402				BR	C10SW0
  4850					
  4851	110222	005037	147422		C10SW2:	CLR	SWTDEP		;DON'T AUTO-DEPOSIT
  4852					C10SW0:
  4853	110226	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4854	110234	104110				DPOSVT			;LOAD SWITCHES INTO FROM 11 WORD
  4855	110236	000450				  $DTF11
  4856	110240	157240				  SWS10
  4857	110242	103412				 BCS	C10SWE		;BRANCH IF LOSING
  4858					
  4859	110244	005737	147422			TST	SWTDEP		;DID PDP-10 ASK FOR SWITCHES?
  4860	110250	001745				BEQ	C10X		;NO.  WELL, DON'T STORE UNTIL ASKED.  DONE
  4861	110252	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4862	110260	104110				DPOSVT			;LOAD SWITCHES INTO $DTSWR
  4863	110262	000457				  $DTSWR
  4864	110264	157240				  SWS10
  4865	110266	103336				 BCC	C10X		;BRANCH IF WINNING
  4866					
  4867					C10SWE:	PMSG	<?10 SW>
  4868	110270	104025				  $PMSG
  4869	110272	145711				  $$CLIT
  4870	110274	000137	100004		$$C1:	JMP	$CNTLC
  4871					
  4872	110300	012705	157240		$SW:	MOV	#SWS10,R5
  4873	110304	104016				TTISDL
  4874	110306	103407				 BCS	1$		;NON-NUMBER, TYPE PRESENT
  4875	110310	104020				TTIS36
  4876	110312	012025				MOV	(R0)+,(R5)+	;PUT IN SWITCH WORD
  4877	110314	011015				MOV	(R0),(R5)
  4878	110316	104145			2$:	TENSW			;DO PDP-10 SWITCHES
  4879	110320	103763				 BCS	C10SWE		;ERROR
  4880	110322	000137	100230		3$:	JMP	$KONSL
  4881					
  4882	110326	104145			1$:	TENSW			;FIRST READ AND STORE CURRENT SWITCHES
  4883	110330	103757				 BCS C10SWE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 138
		CONS11 PAL[KL,SYS]	Page 44.1 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4884	110332	104043				PFORCE
  4885	110334	010500				MOV	R5,R0		;PRINT CURRENT SWITCHES
  4886	110336	104042				PNT36
  4887	110340	104031				PCRLF
  4888	110342	000767				BR	3$
  4889					
  4890	110344	104055			C10DDT:	SETFLG
  4891	110346	147740				  DDTFLG		;SET FOR DDT MODE INPUT
  4892	110350	104043				PFORCE			;SET FORCED PRINTOUT
  4893	110352	022737	150254	150474		CMP	#$OUTBF,$OUTPT	;ANY OUTPUT WAITING ?
  4894	110360	001403				BEQ	2$		;NO
  4895	110362	104055				SETFLG
  4896	110364	147764				  $TTLKF		;PREVENT INPUT CHECKS
  4897	110366	104151				PRINTT			;YES, PRINT IT
  4898	110370	104006			2$:	TTLOOK			;GET INPUT CHAR
  4899	110372	103400				 BCS	3$		;NOTHING THERE, SEND ZERO
  4900	110374	120027	000030		3$:	CMPB	R0,#MSWCHR	;SWITCH TO KLDCP?
  4901	110400	001226				BNE	C10TIX		;NO.
  4902	110402	000137	107212			JMP	MTTYI0		;YES.  READ A LINE FOR KLDCP
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 139
		CONS11 PAL[KL,SYS]	Page 45 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4903					;C10PRG C10PT C10P2 C10P1 C10X1 C10P3 C10P4 C10P5 C10KAS KASET
  4904					
  4905	110406	010501			C10PRG:	MOV	R5,R1		;GET CONTROL FIELD
  4906	110410	042701	177760			BIC	#177760,R1
  4907						SL	R1,1
  4908	110416	000171	110422			JMP	@C10PT(R1)	;DISPATCH
  4909					
  4910	110422	107710			C10PT:	TENDEAD		;HALT
  4911	110424	110466				C10P1		;FATAL
  4912	110426	110462				C10P2		;ERROR HALT
  4913	110430	110476				C10P3		;END OF PROGRAM
  4914	110432	110504				C10P4		;END OF PASS
  4915	110434	110510				C10P5		;GIVE PDP-10 CLOCK DEFAULT WORD
  4916	110436	112156				DIASEL		;"DIAMON" FILE SELECTION
  4917	110440	112242				DIARD		;"DIAMON" FILE READ
  4918	110442	112144				P10CMD		;PDP-10 PROGRAM COMMAND
  4919	110444	110530				C10KAS		;TURN ON KA SIMULATION
  4920	110446	107552				C10DNX
  4921	110450	107552				C10DNX
  4922	110452	107552				C10DNX
  4923	110454	107552				C10DNX
  4924	110456	107552				C10DNX
  4925	110460	107552				C10DNX
  4926					
  4927	110462	105037	147670		C10P2:	CLRB	TENRUN
  4928	110466	005037	152216		C10P1:	CLR	TENCLK
  4929	110472	000137	107526		C10X1:	JMP	C10DON
  4930					
  4931	110476	105037	147670		C10P3:	CLRB	TENRUN		;TURN OFF TEN RUNNING
  4932	110502	104062				ERREOP			;END OF PROGRAM
  4933					
  4934	110504	104061			C10P4:	EOP
  4935	110506	000626				BR	C10X
  4936					
  4937					C10P5:
  4938	110510	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4939	110516	104110				DPOSVT
  4940	110520	000450				  $DTF11
  4941	110522	157246				  CLKDFL
  4942	110524	103453				 BCS C10BCR
  4943	110526	000442				BR C10CX
  4944					
  4945	110530	004737	110540		C10KAS:	JSR PC,KASET	;SET KASIM MODE
  4946	110534	000137	107526			JMP C10DON
  4947					
  4948	110540	005737	147660		KASET:	TST KASIM
  4949	110544	001012				BNE 1$		;KASIM ALREADY ENABLED
  4950	110546	104055				SETFLG
  4951	110550	147660				 KASIM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 140
		CONS11 PAL[KL,SYS]	Page 45.1 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4952	110552	104055				SETFLG
  4953	110554	147422				 SWTDEP		;ENABLE AUTO SWITCH DEPOSIT
  4954	110556	104055				SETFLG
  4955	110560	147666				 MONMODE	;TURN ON MONMODE FOR TTY I/O
  4956	110562	104055				SETFLG
  4957	110564	147664				 MTTYOF		;SET TTY OUTPUT DONE FLAG
  4958	110566	104055				SETFLG
  4959	110570	152216				 TENCLK		;ENABLE CLOCK INTERRUPTS AND SETTING DTCLK
  4960	110572	000207			1$:	RTS PC
  4961					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 141
		CONS11 PAL[KL,SYS]	Page 46 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  4962					;Clock operations.  C10CLK
  4963					
  4964	110574	010501			C10CLK:	MOV	R5,R1
  4965		000007			.IIF EQ SAILVR,	BIC	#177774,R1
  4966	110576	042701	177770		.IIF GT SAILVR, BIC	#177770,R1		;3 BITS FOR SAIL
  4967						SL	R1,1
  4968	110604	000171	110610			JMP	@C10CPT(R1)
  4969					
  4970	110610	110630			C10CPT:	C10C0			;DISABLE CLOCK COUNT
  4971	110612	110660				C10C1			;RESET CLOCK COUNT.  ENABLE CLOCK COUNT
  4972	110614	110714				C10C2			;RESET CLOCK. ENABLE CLOCK INT AFTER PERIOD
  4973	110616	110640				C10C3			;READ CLOCK COUNT TO 10.
  4974		000007			.IF GT SAILVR
  4975	110620	111154				C10C4			;SET TIME BASE FROM 10. ENABLE KEEPING TIME
  4976	110622	111342				C10C5			;GIVE TIME BASE TO 10.
  4977					.IF DF CLKASB
  4978	110624	111550				C10C6			;STORE AND ENABLE STORING TIME IN $DTTIME
  4979	110626	111140				C10CER
  4980					.IFF
  4981						C10CER			;ERROR
  4982						C10CER			;ERROR
  4983					.ENDC ;CLKASB
  4984					.ENDC ;SAILVR
  4985					
  4986	110630	005037	152216		C10C0:	CLR	TENCLK
  4987	110634	000137	107526		C10CX:	JMP	C10DON
  4988					
  4989					C10C3:
  4990	110640	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  4991	110646	104110				DPOSVT			;LOAD CLOCK COUNT INTO FROM 11 WORD
  4992	110650	000450				  $DTF11
  4993	110652	147426				  CLKCNT
  4994	110654	103531			C10BCR:	 BCS	C10CER		;ERROR
  4995	110656	000766				BR	C10CX
  4996					
  4997	110660	104055			C10C1:	SETFLG
  4998	110662	152216				  TENCLK
  4999					.IF NDF SAILVR
  5000					C10CX1:	BIC	#200,KWLKS
  5001					1$:	TSTB	KWLKS		;WAIT FOR CLOCK
  5002						BPL	1$		;THEN CLEAR TO ALLOW FOR
  5003						BIC	#200,KWLKS	;16MS BEFORE 1ST CLOCK
  5004					.IFF
  5005	110664	005037	157160		C10CX1:	CLR	CLKFLG		;SAIL VERSION.  WAIT FOR CLOCK FLAG TO CHANGE
  5006	110670	005737	157160		1$:	TST	CLKFLG
  5007	110674	001775				BEQ	1$		;LOOP UNTIL INTERRUPT SEEN.
  5008					.ENDC
  5009					
  5010	110676	012700	147426			MOV	#CLKCNT,R0	;INIT CLOCK COUNTER
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 142
		CONS11 PAL[KL,SYS]	Page 46.1 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5011	110702	005020				CLR	(R0)+
  5012	110704	005020				CLR	(R0)+
  5013	110706	005010				CLR	(R0)
  5014	110710	000137	107526			JMP	C10DON
  5015					
  5016					
  5017					C10C2:
  5018	110714	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5019	110722	104104				EXAMT			;GET WAIT COUNT FROM TO 11 WORD
  5020	110724	000447				  $DTT11
  5021	110726	147434				  C10CW
  5022	110730	103503				 BCS	C10CER
  5023	110732	012737	177400	152216		MOV	#177400,TENCLK
  5024	110740	000751				BR	C10CX1
  5025					
  5026					C10COP:
  5027					.IF NDF SAILVR
  5028						TSTB	KWLKS		;CLOCK FLAG SET ?
  5029						BPL	1$		;NO, RETURN
  5030						BIC	#200,KWLKS	;CLEAR FLAG
  5031					.IFF
  5032	110742	005737	157160			TST	CLKFLG
  5033	110746	001473				BEQ	1$
  5034	110750	005037	157160			CLR	CLKFLG
  5035					.ENDC
  5036					
  5037	110754	005237	147662			INC	$TTYTIM		;COUNT TTY TIMER
  5038	110760	023737	177570	157230		CMP	SWR,$$SWR	;PDP-11 CONSOLE SWITCHES CHANGED ?
  5039	110766	001404				BEQ	3$		;NO
  5040						PUSH	R0
  5041	110772	104145				TENSW			;YES, DO PDP-10 SWITCHES
  5042	110774	103461				 BCS	C10CER		;ERROR
  5043						POP	R0
  5044	111000	105737	147670		3$:	TSTB	TENRUN		;IS 10 RUNNING ?
  5045	111004	001454				BEQ	1$		;NO
  5046					.IF DF CLKASB
  5047	111006	005737	157140			TST TMSFLG
  5048	111012	001413				BEQ 4$			;NOT TIME TO STORE TIME
  5049	111014	005037	157140			CLR TMSFLG
  5050	111020	004737	111600			JSR PC,RDCLK		;READ TIME/DATE INTO TIMTMP
  5051	111024	012737	004000	147424	.IIF NE EPTREL,	MOV #XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5052	111032	104106				DPOST			;STORE IN EPT DTTIME
  5053	111034	000446				  $DTTIME
  5054	111036	157152				  TIMTMP
  5055	111040	103437				 BCS C10CER		;ERROR
  5056					.ENDC ;DF CLKAB
  5057	111042	005737	152216		4$:	TST	TENCLK
  5058	111046	001433				BEQ	1$		;CLOCK NOT ENABLED
  5059	111050	062737	000001	147426		ADD	#1,CLKCNT	;INCREMENT PDP-10 CLOCK COUNT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 143
		CONS11 PAL[KL,SYS]	Page 46.2 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5060	111056	005537	147430			ADC	CLKCNT+2
  5061	111062	005537	147432			ADC	CLKCNT+4
  5062	111066	105737	152216			TSTB	TENCLK		;DOING WAIT ?
  5063	111072	001004				BNE	2$		;NO
  5064	111074	023737	147426	147434		CMP	CLKCNT,C10CW	;WAITED LONG ENOUGH ?
  5065	111102	001015				BNE	1$		;NOT YET
  5066					2$:	PUSH	<R0,R1>
  5067	111110	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5068	111116	104111				D10MON			;SET -1 TO 10 "$DTCLK"
  5069	111120	000445				  $DTCLK
  5070	111122	103406				 BCS	C10CER
  5071	111124	012777	000400	046222		MOV	#INT10S,@.STDTE	;DING TEN
  5072						POP	<R1,R0>
  5073	111136	000207			1$:	RTS	PC
  5074					
  5075	111140	005037	152216		C10CER:	CLR	TENCLK
  5076						PMSG	<?10 CLKOP>
  5077	111144	104025				  $PMSG
  5078	111146	145720				  $$CLIT
  5079	111150	000137	100004			JMP	$CNTLC
  5080					
  5081					
  5082		000007			.IFG SAILVR
  5083					C10C4:	
  5084	111154	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5085	111162	104104				EXAMT					;GET ADDRESS FROM TO 11 WORD
  5086	111164	000447				  $DTT11
  5087	111166	157144				  TIMADR
  5088	111170	103763				 BCS	C10CER				;CAN'T READ ADDRESS
  5089	111172	012700	157144			MOV	#TIMADR,R0
  5090	111176	042760	177774	000002		BIC	#177774,2(R0)			;CLEAR ALL BUT BITS 18-19 (TIMADR+2)
  5091	111204	012737	024000	147424		MOV	#EXVIRT!PRTOFF,$TADSP		;ADDRESS GIVEN IS EXEC VIRTUAL
  5092	111212	104103				EXAM					;EXAMINE 10.  RESULT TO $DRAM
  5093	111214	103751				 BCS	C10CER				;IF EXAMINE FAILED.
  5094	111216	013700	147462			MOV	$DRAM,R0			;HIGH WORD BITS 20-35
  5095						SL	R0,3				;SHIFT THREE PLACES
  5096	111230	010037	157150			MOV	R0,TIMADR+4			;SAVE HIGH BITS FOR AWHILE
  5097	111234	012700	157144			MOV	#TIMADR,R0
  5098	111240	062720	000001			ADD	#1,(R0)+			;INCREMENT PDP-10 ADDRESS
  5099	111244	005510				ADC	(R0)				;FOR FETCH OF LOW ORDER WORD
  5100	111246	042710	177774			BIC	#177774,(R0)
  5101	111252	005740				TST	-(R0)
  5102	111254	012737	024000	147424		MOV	#EXVIRT!PRTOFF,$TADSP		;ADDRESS GIVEN IS EXEC VIRTUAL
  5103	111262	104103				EXAM	
  5104	111264	103725				 BCS	C10CER
  5105	111266	012700	147466			MOV	#$DRAM+4,R0
  5106	111272	042710	177770			BIC	#177770,(R0)			;CLEAR ALL BUT LOW WORD'S BITS 1-3
  5107	111276	053710	157150			BIS	TIMADR+4,(R0)			;INCLUDE BITS 23-35 OF HIGH WORD
  5108	111302	012701	157170			MOV	#TIMBAS+4,R1
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 144
		CONS11 PAL[KL,SYS]	Page 46.3 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5109						PUSH	PS
  5110	111312	012737	000340	177776		MOV	#PR7,PS				;TURN OFF INTERRUPTS
  5111	111320	011011				MOV	(R0),(R1)
  5112	111322	014041				MOV	-(R0),-(R1)
  5113	111324	014041				MOV	-(R0),-(R1)
  5114						POP	PS
  5115	111332	104055				SETFLG
  5116	111334	157162				 KTIMBS					;KEEP TIME BASE
  5117	111336	000137	107526		C10XXX:	JMP	C10DON
  5118					
  5119					
  5120	111342	012701	157152		C10C5:	MOV	#TIMTMP,R1
  5121	111346	012700	157164			MOV	#TIMBAS,R0
  5122						PUSH	PS
  5123	111356	012737	000340	177776		MOV	#PR7,PS				;TURN OFF INTERRUPTS
  5124	111364	012021				MOV	(R0)+,(R1)+			;COPY TIMTMP←TIMBAS
  5125	111366	012021				MOV	(R0)+,(R1)+
  5126	111370	011011				MOV	(R0),(R1)
  5127						POP	PS
  5128	111376	005737	157162			TST	KTIMBS				;ARE WE COUNTING TIMEBASE?
  5129	111402	001003				BNE	1$				;JUMP IF YES
  5130	111404	005011				CLR	(R1)				;NO. TIMEBASE NOT KEPT OR INVALID
  5131	111406	005041				CLR	-(R1)				;RETURN ZERO.
  5132	111410	005041				CLR	-(R1)
  5133					1$:
  5134	111412	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5135	111420	104104				EXAMT					;GET DEP ADDRESS FROM TO 11 WORD
  5136	111422	000447				  $DTT11
  5137	111424	157144				  TIMADR
  5138	111426	103644				 BCS	C10CER				;CAN'T READ ADDRESS
  5139	111430	012701	157144			MOV	#TIMADR,R1
  5140	111434	042761	177774	000002		BIC	#177774,2(R1)			;CLEAR ALL BUT BITS 18-19 (TIMADR+2)
  5141	111442	013702	157156			MOV	TIMTMP+4,R2			;GET HIGH ORDER TIME BASE
  5142						SR	R2,3				;SHIFT TO ALIGN BITS 23-35
  5143	111454	012700	147466			MOV	#$DRAM+4,R0
  5144	111460	005010				CLR	(R0)
  5145	111462	005040				CLR	-(R0)
  5146	111464	010240				MOV	R2,-(R0)			;$DRAM+0←BITS 23-35 OF HIGH WORD
  5147	111466	012737	024000	147424		MOV	#EXVIRT!PRTOFF,$TADSP		;ADDRESS GIVEN IS EXEC VIRTUAL
  5148	111474	104107				DPOSVR					;SEND HIGH WORD
  5149	111476	103620				 BCS	C10CER
  5150	111500	012701	157144			MOV	#TIMADR,R1			;INCREMENT ADDRESS TO LOW WORD
  5151	111504	062721	000001			ADD	#1,(R1)+
  5152	111510	005511				ADC	(R1)
  5153	111512	042711	177774			BIC	#177774,(R1)
  5154	111516	005741				TST	-(R1)
  5155	111520	042737	177770	157156		BIC	#177770,TIMTMP+4		;CLEAR ALL BUT BITS 1-3
  5156	111526	012700	157152			MOV	#TIMTMP,R0
  5157	111532	012737	024000	147424		MOV	#EXVIRT!PRTOFF,$TADSP		;ADDRESS GIVEN IS EXEC VIRTUAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 145
		CONS11 PAL[KL,SYS]	Page 46.4 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5158	111540	104107				DPOSVR
  5159	111542	103275				 BCC	C10XXX
  5160	111544	000137	111140		C10CR1:	JMP	C10CER
  5161					
  5162					.IF DF CLKASB
  5163	111550	104055			C10C6:	SETFLG				;ENABLE STORING TIME/DATE
  5164	111552	157142				 TIMFLG
  5165	111554	004737	111600			JSR PC,RDCLK			;READ CLOCK INTO TIMTMP
  5166	111560	012737	004000	147424	.IIF NE EPTREL,	MOV #XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5167	111566	104110				DPOSVT
  5168	111570	000446				  $DTTIME
  5169	111572	157152				  TIMTMP
  5170	111574	103763				 BCS C10CR1			;ERROR
  5171	111576	000657				BR C10XXX
  5172					
  5173					;FORMAT OF DTTIME PDP10 WORD IS:
  5174					;BYTE (5)DAY (2)0 (5)HOUR (2)0 (6)MINUTE (4)MONTH,YEAR (2)0 (6)SECOND
  5175					
  5176					RDCLK:	PUSH R0
  5177						PUSH R1
  5178						PUSH R2
  5179						PUSH R3
  5180	111610	105777	766236		2$:	TSTB @$CLKST
  5181	111614	100375				BPL 2$				;MAKE SURE CLOCK IS READY
  5182	111616	017700	766222			MOV @$CLKMD,R0
  5183	111622	017701	766220			MOV @$CLKHM,R1
  5184	111626	017702	766216			MOV @$CLKSEC,R2
  5185	111632	027700	766206			CMP @$CLKMD,R0
  5186	111636	001364				BNE 2$
  5187	111640	027701	766202			CMP @$CLKHM,R1
  5188	111644	001361				BNE 2$
  5189	111646	027702	766176			CMP @$CLKSEC,R2
  5190	111652	001356				BNE 2$
  5191	111654	032702	001400			BIT #1400,R2			;TEST LOW TWO YEAR BITS
  5192	111660	001407				BEQ 3$				;BRANCH IF A LEAP YEAR
  5193	111662	020027	001035			CMP R0,#2*400+29.		;IS IT FEB 29?
  5194	111666	001004				BNE 3$				;NO
  5195	111670	012777	001501	766146		MOV #3*400+1+100,@$CLKMD	;YES, SET TO MAR 1
  5196	111676	000744				BR 2$
  5197	111700	010003			3$:	MOV R0,R3
  5198						SL R3,4
  5199	111712	042703	007777			BIC #7777,R3			;LEAVE TOP 4 BITS (MONTH)
  5200	111716	050302				BIS R3,R2			;MONTH/YEAR//SECONDS
  5201	111720	006000				ROR R0
  5202	111722	103002				BCC 1$
  5203	111724	052701	100000			BIS #100000,R1			;LOW BIT OF DAY
  5204	111730	012703	157152		1$:	MOV #TIMTMP,R3
  5205	111734	010223				MOV R2,(R3)+
  5206	111736	010123				MOV R1,(R3)+
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 146
		CONS11 PAL[KL,SYS]	Page 46.5 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5207	111740	042700	177760			BIC #177760,R0			;JUST KEEP LOW 4 BITS
  5208	111744	010013				MOV R0,(R3)
  5209						POP R3
  5210						POP R2
  5211						POP R1
  5212						POP R0
  5213	111756	000207				RTS PC
  5214					
  5215	111760	000002			TCUINT:	RTI				;INT FROM SETTING CLOCK
  5216					
  5217					.ENDC ;DF CLKASB
  5218					
  5219					.ENDC ;SAILVR
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 147
		CONS11 PAL[KL,SYS]	Page 47 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5220					;PDP-10 SWITCH REGISTER
  5221					
  5222	111762	013737	177570	157230	$TENSW:	MOV	SWR,$$SWR	;GET PDP-11 SWITCHES
  5223	111770	013737	157230	157234		MOV	$$SWR,$SWS10+2
  5224					
  5225	111776	012701	157232			MOV	#$SWS10,R1	;POSITION FOR 0 TO 15 OF
  5226	112002	012703	000004			MOV	#4,R3		;PDP-10 SWITCH REGISTER
  5227	112006	104146				PROL36
  5228					
  5229	112010	012704	157234			MOV	#$SWS10+2,R4	;Bits 4:15 + xxxx of new stuff
  5230	112014	012705	157242			MOV	#SWS10+2,R5	;old switches.
  5231					
  5232	112020	042714	000017			BIC	#17,(R4)	;CLEAR 16-19 FROM NEW
  5233	112024	042715	177760			BIC	#177760,(R5)	;CLEAR 4-15 FROM OLD
  5234					
  5235	112030	052425				BIS	(R4)+,(R5)+	;INSERT BITS 4-15
  5236					
  5237	112032	042714	177760			BIC	#177760,(R4)	;CLEAR HI JUNK FROM NEW
  5238	112036	042715	000017			BIC	#17,(R5)	;CLEAR 0-3 FROM OLD
  5239					
  5240	112042	051415				BIS	(R4),(R5)	;INSERT BITS 0-3
  5241					
  5242	112044	105737	147670			TSTB	TENRUN		;PDP-10 RUNNING ?
  5243	112050	001412				BEQ	1$		;NO
  5244					
  5245					.IF DF SAILVR
  5246	112052	005737	147422			TST	SWTDEP		;DID PDP-10 ASK FOR SWITCHES?
  5247	112056	001407				BEQ	1$		;NO.  WELL, DON'T STORE UNTIL ASKED
  5248					.ENDC
  5249					
  5250	112060	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5251	112066	104110				DPOSVT			;DEPOSIT PDP-10 SWITCH REGISTER
  5252	112070	000457				  $DTSWR		;IN DTE20 COMM AREA
  5253	112072	157240				  SWS10
  5254	112074	103402				 BCS	2$		;ERROR
  5255		112076			$TCX=.
  5256					1$:	EXIT
  5257	112076	000137	124064			  JMP	$EXIT
  5258					2$:	EXITERR			;RETURN
  5259	112102	000137	124036			  JMP	$EXITE
  5260					
  5261					;PDP-10 LAST TYPED CHARACTER ROUTINE
  5262					
  5263	112106	105737	147670		$TENCHR:TSTB	TENRUN		;PDP-10 RUNNING ?
  5264	112112	001771				BEQ	$TCX		;NO
  5265	112114	005737	150022			TST	TENTTY		;TTY DEPOSIT ALLOWED ?
  5266	112120	001766				BEQ	$TCX		;NO
  5267						PUSH	R0
  5268	112124	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 148
		CONS11 PAL[KL,SYS]	Page 47.1 	PDP-10 RUN TIME SUPPORT		;TENCMD CMD10T C10DON

  5269	112132	104106				DPOST			;YES, SEND LAST TYPED CHAR
  5270	112134	000454				  $DTCHR
  5271	112136	150024				  $TNCHR
  5272						POP	R0
  5273	112142	000755				BR	$TCX		;DON'T CARE IF FAILED
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 149
		CONS11 PAL[KL,SYS]	Page 48 	PDP-10 PROGRAM COMMAND

  5274					.SBTTL	PDP-10 PROGRAM COMMAND
  5275					
  5276	112144	012700	777777		P10CMD:	MOV	#-1,R0		;USE OUTPUT BUFFER
  5277	112150	104133				PRGCMD			;& PROGRAM COMMAND
  5278	112152	103430				 BCS	DIANF		;C-BIT SET, ERROR
  5279	112154	000424				BR	DIAFND		;PASSED
  5280					
  5281					.SBTTL	"DIAMON" FILE SELECTION AND READ ROUTINES
  5282					
  5283	112156	012701	150500		DIASEL:	MOV	#$INBUF,R1	;PUT "P" & "SPACE" FIRST
  5284	112162	012721	020120			MOV	#"P ,(R1)+	;IN CASE ACT10 LOAD
  5285	112166	012700	150254			MOV	#$OUTBF,R0	;TRANSFER "DIAMON" FILE.EXT
  5286	112172	010037	150474			MOV	R0,$OUTPT	;TO INPUT BUFFER
  5287	112176	004737	101612			JSR	PC,$DIASX
  5288	112202	012737	150502	150716		MOV	#$INBUF+2,$INPTC ;SET PICKUP POINTER
  5289					
  5290	112210	104206				NAMEXT			;SETUP FILE NAME.EXT
  5291					
  5292	112212	104055				SETFLG
  5293	112214	150734				  LDCNTL		;SET LOAD CONTROL TO HELP
  5294	112216	104055				SETFLG
  5295	112220	151120				  DIAFLG		;SET PROCESSING TO "DIAMON" MODE
  5296					
  5297	112222	000137	133350			JMP	DEVFIL		;GO LOOKUP & READ FIRST ASCII LINE
  5298					
  5299					;RETURN HERE WHEN FILE FOUND
  5300	112226	005000			DIAFND:	CLR	R0		;SET FOUND INDICATOR
  5301	112230	000137	110056		$DIAFX:	JMP	C10TIX		;USE 10 TTY INPUT ROUTINE
  5302					
  5303					;RETURN HERE WHEN FILE NOT FOUND
  5304	112234	012700	777777		DIANF:	MOV	#-1,R0		;SET NOT FOUND INDICATOR
  5305	112240	000773				BR	$DIAFX
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 150
		CONS11 PAL[KL,SYS]	Page 49 	"DIAMON" FILE SELECTION AND READ ROUTINES

  5306					;"DIAMON" FILE READ
  5307					
  5308	112242	004737	122044		DIARD:	JSR	PC,$TI36C	;CLEAR 36 BIT WORD STORAGE
  5309					
  5310	112246	023737	150716	150720		CMP	$INPTC,$INPTR	;ANY CURRENT INPUT ?
  5311	112254	003402				BLE	DIARNL		;NO
  5312	112256	000137	140312		1$:	JMP	ACTLD2		;GO READ NEXT INPUT LINE
  5313					
  5314		112262			DIARNL=.			;RETURN HERE WITH NEW LINE SETUP
  5315	112262	012702	000005		2$:	MOV	#5,R2		;5 ASCII CHARS PER 36 BIT WORD
  5316					
  5317	112266	023737	150716	150720	3$:	CMP	$INPTC,$INPTR	;EOL ?
  5318	112274	003014				BGT	4$		;YES
  5319	112276	117700	036414			MOVB	@$INPTC,R0	;GET FILE LINE CHAR
  5320	112302	005237	150716			INC	$INPTC
  5321	112306	012701	000007			MOV	#7,R1
  5322	112312	004737	121766			JSR	PC,SHFT36	;SHIFT 36 BIT WORD LEFT 7
  5323	112316	150037	147462			BISB	R0,$DRAM	;INSERT NEW ASCII BYTE
  5324	112322	005302				DEC	R2		;DONE 5 CHARS ?
  5325	112324	003360				BGT	3$		;NOT YET
  5326					
  5327	112326	005001			4$:	CLR	R1		;LEFT JUSTIFY FOR PDP-10 ASCII
  5328	112330	004737	121766			JSR	PC,SHFT36
  5329					
  5330	112334	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5331	112342	104110				DPOSVT			;LOAD INTO FROM 11 WORD
  5332	112344	000450				  $DTF11
  5333	112346	147462				  $DRAM
  5334	112350	103012				 BCC	6$		;OK
  5335					
  5336					5$:	PMSG	<?DIAMON XFER>
  5337	112352	104025				  $PMSG
  5338	112354	145732				  $$CLIT
  5339	112356	000137	100004			JMP	$CNTLC
  5340					
  5341		112362			DIAEOF=.			;DIAMON READ END-OF-FILE
  5342	112362	012737	004000	147424	.IIF NE EPTREL,	MOV	#XEPT!PRTOFF,$TADSP	;SET ADDR MODE FOR NEXT EXDEP
  5343	112370	104111				D10MON			;SET FROM 11 WORD -1
  5344	112372	000450				  $DTF11
  5345	112374	103766				 BCS	5$		;ERROR
  5346					
  5347	112376	000137	107526		6$:	JMP	C10DON		;TELL 10 TO CONTINUE
  5348					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 151
		CONS11 PAL[KL,SYS]	Page 50 	PDP-11 CONSOLE FUNCTIONS

  5349					.SBTTL	PDP-11 CONSOLE FUNCTIONS
  5350					
  5351					;START PDP11 AT ADDRESS GIVEN
  5352					
  5353	112402	104016			.SE:	TTISDL
  5354	112404	103405				 BCS	2$		;NON-NUMBER
  5355					
  5356	112406	104200			1$:	TTOCTE			;READ AN OCTAL ADDRESS
  5357					
  5358	112410	010037	157200		4$:	MOV	R0,SEADR	;GO TO ADDRESS IN R0
  5359	112414	000137	113250			JMP	SRT11
  5360					
  5361	112420	122700	000104		2$:	CMPB	#'D,R0		;"D", START DIAGNOSTIC
  5362	112424	001406				BEQ	3$
  5363	112426	122700	000103			CMPB	#'C,R0		;"C", START CONSOLE
  5364	112432	001145				BNE	$$CMDE
  5365	112434	012700	100000			MOV	#PRGSRT,R0
  5366	112440	000763				BR	4$
  5367	112442	012700	003000		3$:	MOV	#3000,R0
  5368	112446	000760				BR	4$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 152
		CONS11 PAL[KL,SYS]	Page 51 	PDP-11 CONSOLE FUNCTIONS

  5369					;EXAMINE ELEVEN AT ADDRESS GIVEN
  5370					
  5371	112450	012705	000001		.EE:	MOV	#1,R5
  5372	112454	000401				BR	.EEB
  5373					
  5374	112456	005005			.EB:	CLR	R5
  5375					
  5376	112460	012702	147726		.EEB:	MOV	#.EADR,R2
  5377	112464	005003				CLR	R3
  5378	112466	104016				TTISDL
  5379	112470	103445				 BCS	6$		;NON-NUMBER
  5380					
  5381	112472	104010				TTCOCT			;READ AN OCTAL ADDRESS
  5382					
  5383	112474	010001				MOV	R0,R1
  5384	112476	010012				MOV	R0,(R2)		;SAVE ADR FOR DEPOSIT
  5385					
  5386	112500	104015				TTIBRK			;GET BREAK CHAR
  5387	112502	103517				 BCS	$$PARA
  5388	112504	122700	000054			CMPB	#COMMA,R0
  5389	112510	001004				BNE	2$
  5390	112512	005203				INC	R3		;SET MULTIPLE PRINT FLAG
  5391	112514	104044				PNORML
  5392	112516	104010				TTCOCT			;GET LAST ADDRESS
  5393	112520	010004				MOV	R0,R4		;SAVE END ADR
  5394					
  5395	112522	040501			2$:	BIC	R5,R1		;IF WORD, MAKE EVEN
  5396	112524	010100			21$:	MOV	R1,R0
  5397	112526	010112				MOV	R1,(R2)		;SAVE ADDRESS
  5398	112530	104035				PNTOCT			;PRINT ADDRESS
  5399	112532	104033				PSLASH
  5400					
  5401	112534	005705			1$:	TST	R5		;BYTE ?
  5402	112536	001403				BEQ	3$		;YES
  5403					
  5404	112540	011100				MOV	(R1),R0
  5405	112542	104035				PNTOCT			;PRINT CONTENTS OF ADDRESS
  5406	112544	000404				BR	4$
  5407					
  5408	112546	111100			3$:	MOVB	(R1),R0
  5409	112550	042700	177400			BIC	#177400,R0
  5410	112554	104036				PNTOCS			;PRINT BYTE CONTENTS
  5411	112556	005703			4$:	TST	R3
  5412	112560	001406				BEQ	5$
  5413	112562	104031				PCRLF
  5414	112564	020104				CMP	R1,R4
  5415	112566	103003				BHIS	5$
  5416	112570	005201				INC	R1		;INCREMENT ADDRESS
  5417	112572	060501				ADD	R5,R1		;IF WORD, INC BY 2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 153
		CONS11 PAL[KL,SYS]	Page 51.1 	PDP-11 CONSOLE FUNCTIONS

  5418	112574	000752				BR	2$
  5419					
  5420	112576	104031			5$:	PCRLF
  5421	112600	000137	100230			JMP	$KONSL
  5422					
  5423	112604	001407			6$:	BEQ	7$		;UPARROW
  5424	112606	102002				BVC	61$		;NONE
  5425	112610	005212				INC	(R2)		;EXAMINE NEXT 11 ADDRESS
  5426	112612	060512				ADD	R5,(R2)
  5427	112614	011201			61$:	MOV	(R2),R1
  5428	112616	005237	150716			INC	$INPTC		;ADVANCE PAST TERMINATOR
  5429	112622	000737				BR	2$
  5430					
  5431	112624	005312			7$:	DEC	(R2)
  5432	112626	160512				SUB	R5,(R2)
  5433	112630	000771				BR	61$
  5434					
  5435					;ZERO ELEVEN
  5436					
  5437	112632	104200			.ZE:	TTOCTE			;GET START ADDRESS
  5438	112634	010005				MOV	R0,R5
  5439					
  5440	112636	104010				TTCOCT			;GET END ADDRESS
  5441					
  5442	112640	005025			1$:	CLR	(R5)+		;ZERO 11
  5443	112642	020500				CMP	R5,R0		;COMPLETED ?
  5444	112644	101775				BLOS	1$		;NO
  5445	112646	000137	100014			JMP	$CONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 154
		CONS11 PAL[KL,SYS]	Page 52 	PDP-11 CONSOLE FUNCTIONS

  5446					;DEPOSIT ELEVEN DATA
  5447					
  5448	112652	012705	000001		.DE:	MOV	#1,R5		;DEPOSIT 11 WORD
  5449	112656	000401				BR	.DEB
  5450					
  5451	112660	005005			.DB:	CLR	R5		;DEPOSIT 11 BYTE
  5452					
  5453	112662	012702	147726		.DEB:	MOV	#.EADR,R2
  5454	112666	104016				TTISDL
  5455	112670	103421				 BCS	5$		;NON-NUMBER
  5456					
  5457	112672	104010				TTCOCT			;READ OCTAL ADDRESS
  5458					
  5459	112674	010001			1$:	MOV	R0,R1
  5460	112676	005705				TST	R5
  5461	112700	001402				BEQ	2$
  5462	112702	030500				BIT	R5,R0
  5463	112704	001016				BNE	$$PARA		;WORD, ODD ADDRESSES ILLEGAL
  5464					
  5465	112706	104016			2$:	TTISDL
  5466	112710	103416				 BCS	$$CMDE
  5467	112712	104010				TTCOCT			;GET DATA
  5468					
  5469	112714	010112				MOV	R1,(R2)
  5470					
  5471	112716	005705				TST	R5		;BYTE ?
  5472	112720	001402				BEQ	3$
  5473					
  5474	112722	010011				MOV	R0,(R1)		;STOW IT
  5475	112724	000401				BR	4$
  5476					
  5477	112726	110011			3$:	MOVB	R0,(R1)		;STOW 11 BYTE
  5478	112730	000137	100230		4$:	JMP	$KONSL
  5479					
  5480	112734	102004			5$:	BVC	$$CMDE		;IF COLON, USE PREVIOUS EXAMINE ADDRESS
  5481	112736	011200				MOV	(R2),R0
  5482	112740	000755				BR	1$
  5483					
  5484	112742	000137	113356		$$PARA:	JMP	$PARA
  5485	112746	000137	113364		$$CMDE:	JMP	$CMDE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 155
		CONS11 PAL[KL,SYS]	Page 53 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5486					.SBTTL	KL10 MONITOR & ACT10 COMMAND ROUTINES
  5487					
  5488	112752	104055			$VERIFY:SETFLG
  5489	112754	147730				  VERIFY
  5490	112756	104044				PNORML
  5491	112760	005037	150732			CLR	LDOVRD		;CLEAR OVERRIDE
  5492	112764	000430				BR	$PROG1
  5493					
  5494	112766	012737	000001	150732	$LDT:	MOV	#1,LDOVRD	;LOAD TEN, OVERRIDE EXT
  5495	112774	000422				BR	$PROG2
  5496	112776	012737	000002	150732	$LDE:	MOV	#2,LDOVRD	;LOAD ELEVEN, OVERRIDE EXT
  5497	113004	000416				BR	$PROG2
  5498	113006	012737	000003	150732	$LDR:	MOV	#3,LDOVRD	;LOAD RAM, OVERRIDE EXT
  5499	113014	000412				BR	$PROG2
  5500	113016	012737	000006	150732	$LDB:	MOV	#6,LDOVRD	;LOAD ELEVEN BIN, OVERRIDE EXT
  5501	113024	000406				BR	$PROG2
  5502	113026	012737	000007	150732	$LDD:	MOV	#7,LDOVRD	;LOAD DSKDMP BOOTSTRAP INTO KLDCP,OVERRIDE EXT (D10)
  5503	113034	000402				BR	$PROG2
  5504					
  5505	113036	005037	150732		$PROG:	CLR	LDOVRD		;CLEAR OVERRIDE
  5506	113042	005037	147730		$PROG2:	CLR	VERIFY
  5507	113046	005037	150734		$PROG1:	CLR	LDCNTL		;CLEAR LOAD CONTROL FLAG
  5508	113052	005037	150726			CLR	SRTFLG		;CLEAR SELF START FLAG
  5509	113056	105037	077777			CLRB	CONSOL-1	;OVERLAY INUSE INDICATOR
  5510	113062	000430				BR	$HELP1		;GO LOAD PROGRAM
  5511					
  5512	113064	104055			$JFILE:	SETFLG
  5513	113066	147620				  JFILEF		;SET DOUBLE INDIRECT FLAG
  5514	113070	005037	147614			CLR	PRGRUN		;CLEAR PROGRAM RUNNING FLAG
  5515	113074	012737	010000	147622		MOV	#TOUTBF+5000,IFINP	;SETUP STORAGE POINTER
  5516	113102	000403				BR	$IIX
  5517					
  5518	113104	012737	003000	147622	$IFILE:	MOV	#TOUTBF,IFINP	;SETUP STORAGE POINTER
  5519	113112	005037	152214		$IIX:	CLR	PCMDFLG		;CLEAR PROGRAM COMMAND
  5520	113116	104055				SETFLG
  5521	113120	147624				  IFILEF		;SET INDIRECT FILE FLAG
  5522	113122	005077	034474			CLR	@IFINP		;CLEAR 1ST BUFFER WORD
  5523	113126	105037	077777			CLRB	CONSOL-1	;OVERLAY INUSE INDICATOR
  5524					
  5525	113132	005037	150732		$HELP:	CLR	LDOVRD		;CLEAR LOAD OVERRIDE FOR H,I,J
  5526	113136	104055				SETFLG
  5527	113140	150734				  LDCNTL		;SET LOAD CONTROL TO "HELP"
  5528	113142	104044				PNORML
  5529					.IF DF MONASB
  5530						TST	DEVTYP
  5531						BPL	$HELP1
  5532						JMP	ACTFIL		;ACT10 HELP
  5533					.ENDC
  5534	113144	000137	130314		$HELP1:	JMP	DVLOAD		;RP04/DECTAPE/FLOPPY HELP
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 156
		CONS11 PAL[KL,SYS]	Page 54 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5535					.IF DF MONASB
  5536					$AT:	TTITRM
  5537						SETFLG
  5538						  DEVTYP		;SET ACT10 MODE
  5539						COMCLR			;CLEAR COMMUNICATIONS
  5540						BR	$DTX
  5541					.ENDC
  5542					
  5543	113150	005037	157306		$DT:	CLR	FLOPPY
  5544	113154	104016				TTISDL
  5545	113156	103413				BCS	$DTC		;LETTER
  5546	113160	104017				TTISDO			;GET UNIT SELECTION DIGIT
  5547	113162	020027	000007			CMP	R0,#7		;MUST BE 0 TO 7
  5548	113166	003076				BGT	$CMDE
  5549	113170	000300				SWAB	R0		;PUT IN PROPER PLACE FOR TC11
  5550	113172	010037	157276			MOV	R0,DTUNIT	;SAVE IT
  5551	113176	005037	157310		$RXX:	CLR	DEVTYP		;SET DECTAPE MODE
  5552	113202	000137	100230		$DTX:	JMP	$KONSL
  5553					
  5554					.IF DF RXASB
  5555					$RX:	SETFLG
  5556						  FLOPPY
  5557						TTISDL
  5558						  BCS	$DTC		;LETTER
  5559						TTISDO			;GET SELECTION DIGIT
  5560						CMP	R0,#1		;MUST BE EITHER 0 OR 1
  5561						BGT	$CMDE
  5562						BNE	1$
  5563						MOV	#RXU1,R0
  5564					1$:	MOV	R0,RXUNIT	;SAVE FOR RX11/RX01 FLOPPY
  5565						BR	$RXX
  5566					.ENDC ;IF DF RXASB
  5567					
  5568					$DTC:
  5569					.IF DF UTLASB
  5570						CMP	#"CO,$INBUF+2	;IS COMMAND 'DTCOPY'/'RXCOPY' ?
  5571						BNE	1$
  5572						CMP	#"PY,$INBUF+4
  5573						BNE	1$
  5574						JSR	PC,$KLUCK	;UTILITY IN CORE ?
  5575						TST	FLOPPY
  5576						BEQ	2$
  5577						JMP	@RXCOPY		;FLOPPY COPY
  5578					2$:	JMP	@DTCOPY		;YES
  5579					.ENDC
  5580	113206	000137	100574		1$:	JMP	$CMDER
  5581					
  5582	113212	005237	150716		$GO:	INC	$INPTC
  5583	113216	013700	157202		$$GO:	MOV	PGOCTL,R0	;GO, START PROGRAM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 157
		CONS11 PAL[KL,SYS]	Page 54.1 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5584	113222	000170	113226			JMP	@LDSTRT(R0)
  5585					
  5586	113226	113242			LDSTRT:	SRT11X
  5587	113230	113324				SRT10
  5588					
  5589	113232	104022			$JC:	TTITRM
  5590	113234	104055				SETFLG			;SET J FILE FLAG TO CONTINUE
  5591	113236	147620				  JFILEF		;INTERRUPTED J FILE PROCESS
  5592	113240	000760				BR	$DTX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 158
		CONS11 PAL[KL,SYS]	Page 55 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5593	113242	013737	157204	157200	SRT11X:	MOV	PGOADR,SEADR
  5594	113250	005737	157200		SRT11:	TST	SEADR
  5595	113254	001417				BEQ	1$		;IF ADR 0, START AT 3000
  5596	113256	032737	000001	157200		BIT	#1,SEADR
  5597	113264	001031				BNE	ADRERR		;ODD ADDRESSES NOT ALLOWED
  5598					
  5599	113266	004737	115156		2$:	JSR	PC,$CMCLR	;CLEAR COMMON STORAGE
  5600					
  5601	113272	005037	147624			CLR	IFILEF		;END INDIRECT PROCESS
  5602	113276	104055				SETFLG
  5603	113300	147614				  PRGRUN
  5604	113302	012700	157774			MOV	#STACK-2,R0	;PASS STACK BASE ADR IN R0
  5605	113306	010006				MOV	R0,SP		;RESET STACK
  5606	113310	000177	043664			JMP	@SEADR		;START 11 PROGRAM AT LOAD ADDRESS
  5607					
  5608	113314	012737	003000	157200	1$:	MOV	#3000,SEADR
  5609	113322	000761				BR	2$
  5610					
  5611	113324	012700	157212		SRT10:	MOV	#TGOADR+2,R0
  5612	113330	012701	157206			MOV	#PGOADR+2,R1	;PUT LOAD ADR IN 10 GO ADR
  5613	113334	011110				MOV	(R1),(R0)
  5614	113336	014140				MOV	-(R1),-(R0)
  5615	113340	000137	106204			JMP	$$$ST		;GO TO 10 START ROUTINE
  5616					
  5617					.LIF NDF MONASB
  5618	113344	000137	100014		$COMNT:	JMP $CONSL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 159
		CONS11 PAL[KL,SYS]	Page 56 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5619					.IF DF MONASB
  5620					
  5621					;ACT10 TIME REQUEST
  5622					
  5623					$TIME:	TTBTRM
  5624						TST	DEVTYP
  5625						BPL	$TIME1		;ONLY LEGAL IN ACT10 MODE
  5626					
  5627						COMENQ			;REQUEST APT10 SERVICE
  5628					
  5629						MOV	#$INBUF,R0
  5630						COMCMD			;SEND COMMAND
  5631					
  5632						$PMSG			;PRINT INPUT LINE
  5633						CINBF
  5634						COMCLR
  5635					$TIME3:	JMP	$CONSL
  5636					
  5637					$TIME1:	JMP	NONACT		;NON ACT10
  5638					
  5639					$LOGO:
  5640					$LOGIN:	TST	DEVTYP		;ONLY LEGAL IN ACT10 MODE
  5641						BPL	$TIME1
  5642						TTITRM
  5643					
  5644						COMENQ			;REQUEST SERVICE
  5645					
  5646						MOV	#$INBUF,R0
  5647						COMCMD			;SEND COMMAND
  5648						COMEOT
  5649						BR	$TIME3
  5650					
  5651					$COMNT:	TST	DEVTYP		;ACT10 MODE ?
  5652						BPL	1$		;NO, LOCAL ONLY
  5653					
  5654						COMENQ			;REQUEST APT10 SERVICE
  5655					
  5656						MOV	#$INBUF,R0
  5657						COMCMD			;SEND MESSAGE
  5658						COMEOT
  5659					
  5660					1$:	BR	$TIME3		;BACK TO CONSOLE
  5661					
  5662					$BOOT:
  5663					$SCRPT:
  5664					$MSCP:
  5665					$GSCP:
  5666					$BOOTT:	JMP	$CMDER
  5667					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 160
		CONS11 PAL[KL,SYS]	Page 56.1 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5668					.ENDC	;END .IF DF MONASB
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 161
		CONS11 PAL[KL,SYS]	Page 57 	KL10 MONITOR & ACT10 COMMAND ROUTINES

  5669					ADRERR:	PMSG	<?ADR>
  5670	113350	104025				  $PMSG
  5671	113352	145747				  $$CLIT
  5672	113354	000405				BR	COMNER
  5673					
  5674					$PARA:	PMSG	<?PARAM>
  5675	113356	104025				  $PMSG
  5676	113360	145754				  $$CLIT
  5677	113362	000402				BR	COMNER
  5678					
  5679	113364	000137	100574		$CMDE:	JMP	$CMDER
  5680					
  5681					.IF DF MONASB
  5682					NONACT:	PMSG	<?ACT10>
  5683						BR	COMNER
  5684					
  5685					NORESP:	PMSG	<?RESPONSE>
  5686					.ENDC
  5687					
  5688	113370	000137	100004		COMNER:	JMP	$CNTLC
  5689					
  5690					;REINITIALIZE SYSTEM
  5691					
  5692	113374	005037	157316		.RI:	CLR	$ONETM
  5693	113400	000137	100000			JMP	START
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 162
		CONS11 PAL[KL,SYS]	Page 58 	LINE PRINTER SELECTION ROUTINE

  5694					.SBTTL	LINE PRINTER SELECTION ROUTINE
  5695					
  5696					.IF DF LPASB
  5697					
  5698					$LPT:	PMSG	<LP, Y OR N ? - ←>
  5699						TTILIN
  5700						TTIYES
  5701						 BCS	$LPT		;JUNK
  5702						BMI	10$		;NO
  5703						MOV	#NOLP,ERRVEC	;DO WE HAVE A LINE PRINTER CONTROLLER ?
  5704						MOV	$LPS,R0
  5705						TST	(R0)
  5706						TST	R0
  5707						BNE	1$		;LP11
  5708						MOV	#LP20A,R0
  5709						TST	(R0)
  5710						TST	R0
  5711						BNE	2$		;LP20A
  5712						MOV	#LP20B,R0
  5713						TST	(R0)
  5714						TST	R0
  5715						BNE	2$		;LP20B
  5716						MOV	#$TIMOT,ERRVEC
  5717						PMSG	<?NO LPT>
  5718						JMP	$CNTLC
  5719					1$:	CLR	LPTYPE		;LP11 - TYPE = 0
  5720						BR	3$
  5721					2$:	MOV	R0,LPTYPE	;LP20 - TYPE = CONTROLLER BASE ADDRESS
  5722					3$:	MOV	#$TIMOT,ERRVEC
  5723						SETFLG
  5724						  LPTFLG
  5725						TST	LPTYPE
  5726						BNE	5$
  5727						TST	@$LPS		;LP11 - LPT OK ?
  5728						BMI	20$		;NO
  5729					4$:	JMP	$CONSL
  5730					
  5731					5$:	JSR	PC,LP20INI	;INITIALIZE LP20
  5732						BCS	20$		;ERROR
  5733						BR	4$
  5734					10$:	CLR	LPTFLG		;TURN OFF LINE PRINTER
  5735						BR	4$
  5736					20$:	PMSG	<?LP ERR\>
  5737						BR	$LPT
  5738					
  5739					NOLP:	CLR	R0		;NO LP CONTROLLER BUS TRAP
  5740						RTI
  5741					
  5742					.SBTTL	LP20 INITIALIZATION ROUTINE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 163
		CONS11 PAL[KL,SYS]	Page 58.1 	LINE PRINTER SELECTION ROUTINE

  5743					
  5744					LP20INI:MOV	LPTYPE,R5	;SETUP BASE ADDRESS
  5745						MOV	#LPLINI!LPRERR,(R5) ;CLEAR LP20
  5746						MOV	#VFUDAT,R0	;SETUP VFU BUFFER
  5747						MOV	R0,LPBSAD(R5)	;SETUP BUFFER ADDRESS
  5748						MOV	#037756,(R0)+	;VFU LOAD CODE & ALL CHANS
  5749						MOV	#77,(R0)+
  5750						MOV	#100,R1		;SET FOR 64 LINES ON PAGE
  5751					1$:	CLR	(R0)+
  5752						DEC	R1
  5753						BNE	1$
  5754						MOV	#167400,(R0)	;VFU STOP LOAD CODE
  5755						MOV	#-206,LPBCTR(R5) ;206 BYTE XFER
  5756						MOV	#LPVLOD!LPPENB!LPGO,(R5) ;VFU LOAD & GO
  5757						JSR	PC,LP20DN	;WAIT FOR DONE
  5758						BCS	3$		;ERROR
  5759					
  5760						CLR	LPCBUF(R5)	;CLEAR LP20 RAM
  5761						MOV	#LPLINI!LPRERR,(R5)
  5762						MOV	#-1000,R0	;LOCATION COUNT
  5763						MOVB	#LPPENB,(R5)	;PARENB & NOT GO
  5764					2$:	CLR	LPRAMD(R5)	;CLEAR
  5765						INC	LPCBUF(R5)	;INCREMENT ADDRESS
  5766						INC	R0		;COUNT IT
  5767						BNE	2$		;IF NOT DONE, GO BACK
  5768						CLC			;COMPLETED, C-BIT CLEAR RETURN
  5769						RTS	PC
  5770					
  5771					3$:	SEC			;ERROR, C-BIT SET RETURN
  5772						RTS	PC
  5773					
  5774					.ENDC ;IF DF LPASB
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 164
		CONS11 PAL[KL,SYS]	Page 59 	CONSOLE TELETYPE FUNCTIONS

  5775					.SBTTL	CONSOLE TELETYPE FUNCTIONS
  5776					
  5777	113404	012705	147776		$TP:	MOV	#$TPLIN,R5	;SET TTY PAGE LENGTH
  5778	113410	000402				BR	$TPW
  5779					
  5780	113412	012705	150000		$TW:	MOV	#$PGWID,R5	;SET TTY PAGE WIDTH
  5781					
  5782	113416	104016			$TPW:	TTISDL
  5783	113420	103414				 BCS	$PARAM
  5784					
  5785	113422	104011				TTIDEC			;SPECIFIED IN DECIMAL
  5786	113424	103412				 BCS	$DECN		;WASNT A DECIMAL NUMBER
  5787					
  5788	113426	010015				MOV	R0,(R5)		;SET IT UP
  5789					
  5790	113430	000137	100014		$TPWF:	JMP	$CONSL		;RETURN TO CONSOLE FOR NEXT COMMAND
  5791					
  5792					;TTY FILL CHARACTER PARAMETER
  5793					
  5794	113434	104017			$TF:	TTISDO
  5795					
  5796	113436	020027	000005			CMP	R0,#5		;CHECK FILL PARAMETER UPPER LIMIT
  5797	113442	003003				BGT	$FILPL
  5798					
  5799	113444	010037	147756			MOV	R0,$TTYFL	;SET TTY FILL PARAMETER
  5800					
  5801	113450	000767				BR	$TPWF
  5802					
  5803					;MESSAGES TO OPERATOR
  5804					
  5805					$DECN:
  5806					$FILPL:
  5807					$OCTN:
  5808	113452	000137	113356		$PARAM:	JMP	$PARA
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 165
		CONS11 PAL[KL,SYS]	Page 60 	KLINIK FIELD SERVICE REMOTE DIAGNOSTICS ENABLE

  5809					.SBTTL	KLINIK FIELD SERVICE REMOTE DIAGNOSTICS ENABLE
  5810					
  5811					.IF NDF TELASB
  5812					
  5813					.KLINIK:CMP	#"IN,$INBUF+2
  5814						BNE	2$
  5815						CMP	#"IK,$INBUF+4
  5816						BNE	2$
  5817					
  5818						TST	DL11EFLG		;PRESENTLY ENABLED ?
  5819						BEQ	1$			;NO
  5820					
  5821					KLUNK=.
  5822						CLR	DL11EFLG		;YES, CLEAR IT
  5823						PMSG	<KLINIK CLEARED>
  5824						JMP	$CNTLC
  5825					
  5826					1$:	CLR	@$FSTKS			;INITIALIZE
  5827						BIS	#DLDTR!DLRTS,@$FSTKS	;SET DATA TERMINAL READY
  5828						BIT	#DLCTS,@$FSTKS		;DO WE HAVE CLEAR TO SEND ?
  5829						BEQ	FSDISC			;NO
  5830						COM	DL11EFLG		;ENABLE KLINIK
  5831						PMSG	<KLINIK ENABLED>
  5832						JMP	$CNTLC
  5833					
  5834					2$:	JMP	$CMDER
  5835					
  5836					;DL11E DISCONNECT, CLEAR TO SEND NOT SET
  5837					
  5838					FSDISC:	CLR	DL11EFLG
  5839						PMSG	<\DL11E NOT CLR TO SEND, >
  5840						BR	KLUNK
  5841					
  5842					.ENDC ;IF NDF TELASB
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 166
		CONS11 PAL[KL,SYS]	Page 61 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  5843					.SBTTL	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU
  5844					
  5845					.IF DF TELASB
  5846					
  5847		000012			FSRLEN==10.		;10 CHARACTER FSRBUF
  5848					
  5849					;TRAP HERE WHEN DATASET INTERRUPT OCCURS
  5850					FSRINT:	PUSH R0
  5851						PUSH R1
  5852	113462	017700	764342			MOV @$FSTKS,R0		;GET THE STATUS
  5853	113466	013701	152260			MOV FSSTATE,R1
  5854	113472	001401				BEQ FSINT1		;FIRST INTERRUPT
  5855	113474	000111				JMP @R1
  5856					
  5857	113476	032700	040000		FSINT1:	BIT #DLRI,R0		;TEST FOR RING INDICATION
  5858	113502	001411				BEQ FSXIT		;NOPE
  5859	113504	012737	113534	152260		MOV #FSINT2,FSSTATE	;SET DISPATCH FOR NEXT INT
  5860	113512	012700	000074			MOV #60.,R0
  5861	113516	012701	114040			MOV #HANGU1,R1
  5862	113522	004737	114254			JSR PC,FSCLKR		;SET CLOCK REQUEST TO HANG UP IN ONE MINUTE
  5863					FSXIT:	POP R1
  5864						POP R0
  5865	113532	000006				RTT
  5866					
  5867	113534	032700	010000		FSINT2:	BIT #DLCD,R0		;TEST CARRIER DETECT
  5868	113540	001772				BEQ FSXIT		;NOPE
  5869	113542	032700	020000			BIT #DLCTS,R0		;TEST CLEAR TO SEND
  5870	113546	001767				BEQ FSXIT		;NOPE
  5871	113550	012737	113616	152260		MOV #FSINT3,FSSTATE	;OK, HAVE BOTH
  5872	113556	012701	114424			MOV #FSMSG,R1
  5873	113562	004737	114200			JSR PC,FSTYP		;TYPE OUT GREETING MESSAGE
  5874	113566	012737	152242	152240		MOV #FSRBUF,FSRPTR
  5875	113574	012737	113626	152260		MOV #FSINT4,FSSTATE
  5876	113602	005777	764224			TST @$FSTKB		;CLEAR INPUT DONE BY REFERENCING BUFFER
  5877	113606	052777	000100	764214		BIS #DLRIE,@$FSTKS	;SET READER INTERRUPT ENABLE
  5878	113614	000744				BR FSXIT
  5879					
  5880	113616	032700	020000		FSINT3:	BIT #DLCTS,R0		;MAKE SURE WE HAVE CLEAR TO SEND
  5881	113622	001341				BNE FSXIT
  5882	113624	000502				BR HANGUP
  5883					
  5884	113626	032700	020000		FSINT4:	BIT #DLCTS,R0
  5885	113632	001477				BEQ HANGUP		;HANGUP IF CLEAR TO SEND IS GONE
  5886	113634	032700	000200			BIT #DLRD,R0		;TEST INPUT DONE
  5887	113640	001732				BEQ FSXIT		;SPURIOUS
  5888	113642	017701	764164			MOV @$FSTKB,R1		;GET THE CHARACTER
  5889	113646	042701	177600			BIC #177600,R1
  5890	113652	020127	000015			CMP R1,#15
  5891	113656	001426				BEQ FSIN4D
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 167
		CONS11 PAL[KL,SYS]	Page 61.1 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  5892	113660	020127	000012			CMP R1,#12
  5893	113664	001423				BEQ FSIN4D
  5894	113666	020127	000177			CMP R1,#177
  5895	113672	001411				BEQ FSIN4R
  5896	113674	023727	152240	152254		CMP FSRPTR,#FSRBUF+FSRLEN
  5897	113702	103311				BHIS FSXIT		;NO MORE ROOM
  5898	113704	110177	036330			MOVB R1,@FSRPTR		;STORE THE CHARACTER
  5899	113710	005237	152240			INC FSRPTR
  5900	113714	000704			FSXITA:	BR FSXIT
  5901					
  5902	113716	023727	152240	152242	FSIN4R:	CMP FSRPTR,#FSRBUF
  5903	113724	001773				BEQ FSXITA
  5904	113726	005337	152240			DEC FSRPTR
  5905	113732	000770				BR FSXITA
  5906					
  5907	113734	042777	000100	764066	FSIN4D:	BIC #DLRIE,@$FSTKS	;CLEAR RECEIVER INTERRUPT ENB
  5908	113742	013700	152240			MOV FSRPTR,R0
  5909	113746	162700	152242			SUB #FSRBUF,R0
  5910	113752	020027	000004			CMP R0,#PWLEN
  5911	113756	001021				BNE FSIN4W		;TYPED WRONG AMOUNT
  5912	113760	012700	152242			MOV #FSRBUF,R0
  5913	113764	012701	114474			MOV #PWORD,R1
  5914	113770	122021			FSIN4E:	CMPB (R0)+,(R1)+
  5915	113772	001013				BNE FSIN4W		;WRONG
  5916	113774	020037	152240			CMP R0,FSRPTR
  5917	114000	103773				BLO FSIN4E		;MORE
  5918	114002	012737	114120	152260		MOV #FSINT5,FSSTATE
  5919	114010	005037	152234			CLR FSCLKA		;FLUSH THE AUTO DESTRUCT CLOCK REQUEST
  5920	114014	005237	152236			INC FSFLG		;WIN
  5921	114020	000735				BR FSXITA
  5922					
  5923	114022	012701	114462		FSIN4W:	MOV #FSLOSM,R1
  5924	114026	004737	114200			JSR PC,FSTYP
  5925	114032	004737	114040		HANGUP:	JSR PC,HANGU1
  5926	114036	000726				BR FSXITA
  5927					
  5928	114040	012777	000004	763762	HANGU1:	MOV #DLRTS,@$FSTKS	;HANG UP DATASET (KEEP REQUEST TO SEND AS FLAG)
  5929	114046	005077	763762			CLR @$FSTPS		;FLUSH TYPEOUT
  5930	114052	005037	152260			CLR FSSTATE
  5931	114056	005037	152236			CLR FSFLG
  5932						PUSH R0
  5933						PUSH R1
  5934	114066	012700	000002			MOV #2,R0
  5935	114072	012701	114110			MOV #FSHNG1,R1
  5936	114076	004737	114254			JSR PC,FSCLKR		;PLANT FS CLOCK REQUEST FOR 2 SECONDS FROM NOW
  5937						POP R1
  5938						POP R0
  5939	114106	000207				RTS PC
  5940					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 168
		CONS11 PAL[KL,SYS]	Page 61.2 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  5941	114110	012777	000046	763712	FSHNG1:	MOV #DLDTR!DLRTS!DLDIE,@$FSTKS	;REENABLE DATASET
  5942	114116	000207				RTS PC
  5943					
  5944	114120	032700	020000		FSINT5:	BIT #DLCTS,R0
  5945	114124	001406				BEQ FSIN5A
  5946	114126	032700	010000			BIT #DLCD,R0
  5947	114132	001403				BEQ FSIN5A
  5948	114134	005037	152234			CLR FSCLKA		;FLUSH DESTRUCT SEQUENCE
  5949	114140	000665				BR FSXITA
  5950					
  5951	114142	012700	000017		FSIN5A:	MOV #15.,R0		;START 15 SECOND TIMEOUT IF NO CLEAR TO SEND ...
  5952	114146	012701	114040			MOV #HANGU1,R1		; ... OR NO CARRIER DETECT
  5953	114152	004737	114254			JSR PC,FSCLKR		;PLANT AUTO DESTRUCT CLOCK REQUEST
  5954	114156	000656				BR FSXITA
  5955					
  5956					FSTINT:	PUSH R0
  5957						PUSH R1
  5958	114164	105777	763644			TSTB @$FSTPS		;TEST TRANSMITTER READY
  5959	114170	001651				BEQ FSXITA		;SPURIOUS INT
  5960	114172	013701	152256			MOV FSTPTR,R1
  5961	114176	000407				BR FSTYP1
  5962					
  5963	114200	005077	763630		FSTYP:	CLR @$FSTPS		;CLEAR TRANSMITTER STATUS
  5964	114204	052777	000100	763622		BIS #DLTIE,@$FSTPS	;SET TRANSMIT INTERRUPT ENABLE
  5965						POP FSTYPR		;SAVE RETURN ADDRESS
  5966	114216	112100			FSTYP1:	MOVB (R1)+,R0		;GET NEXT CHARACTER
  5967	114220	001411				BEQ FSTYP2		;END OF STRING
  5968	114222	010077	763610			MOV R0,@$FSTPB		;SEND CHARACTER
  5969	114226	010137	152256			MOV R1,FSTPTR		;SAVE POINTER TO TEXT
  5970	114232	032777	020000	763570		BIT #DLCTS,@$FSTKS
  5971	114240	001674				BEQ HANGUP
  5972	114242	000624				BR FSXITA
  5973					
  5974	114244	005077	763564		FSTYP2:	CLR @$FSTPS		;CLEAR XMTR STATUS AGAIN
  5975	114250	000177	036000			JMP @FSTYPR		;RETURN TO CALLER
  5976					
  5977					;CALL WITH # SECONDS IN R0, ADDRESS IN R1
  5978					FSCLKR:	PUSH R2
  5979						PUSH R3
  5980						PUSH R1
  5981	114262	010002				MOV R0,R2		;CONVERT R0 TO 60THS
  5982	114264	005001				CLR R1
  5983		000006			.REPT 6
  5984						ASL R1
  5985						ASL R0
  5986						ADC R1
  5987					.ENDR				;R1:R0 = 64 * ORIGINAL R0
  5988	114266	006301				ASL R1
  5989	114270	006300				ASL R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 169
		CONS11 PAL[KL,SYS]	Page 61.3 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  5990	114272	005501				ADC R1
  5991	114274	006301				ASL R1
  5992	114276	006300				ASL R0
  5993	114300	005501				ADC R1
  5994	114302	006301				ASL R1
  5995	114304	006300				ASL R0
  5996	114306	005501				ADC R1
  5997	114310	006301				ASL R1
  5998	114312	006300				ASL R0
  5999	114314	005501				ADC R1
  6000	114316	006301				ASL R1
  6001	114320	006300				ASL R0
  6002	114322	005501				ADC R1
  6003	114324	006301				ASL R1
  6004	114326	006300				ASL R0
  6005	114330	005501				ADC R1
  6006	114332	005003				CLR R3
  6007		000002			.REPT 2
  6008						ASL R3
  6009						ASL R2
  6010						ADC R3
  6011					.ENDR				;R3:R2 = 4 * ORIGINAL R0
  6012	114334	006303				ASL R3
  6013	114336	006302				ASL R2
  6014	114340	005503				ADC R3
  6015	114342	006303				ASL R3
  6016	114344	006302				ASL R2
  6017	114346	005503				ADC R3
  6018	114350	160200				SUB R2,R0
  6019	114352	005601				SBC R1
  6020	114354	160301				SUB R3,R1		;R1:R0 GETS 60 * ORIGINAL R0
  6021	114356	005002				CLR R2
  6022	114360	063700	157172			ADD TIM11,R0
  6023	114364	005501				ADC R1
  6024	114366	063701	157174			ADD TIM11+2,R1
  6025	114372	005502				ADC R2
  6026	114374	063702	157176			ADD TIM11+4,R2		;R2:R1:R0 HAVE NEW TIME
  6027	114400	012703	152226			MOV #FSRTIM,R3		;STORE IN CLOCK REQUEST TIME WORDS
  6028	114404	010023				MOV R0,(R3)+
  6029	114406	010123				MOV R1,(R3)+
  6030	114410	010213				MOV R2,(R3)
  6031						POP FSCLKA
  6032						POP R3
  6033						POP R2
  6034	114422	000207				RTS PC
  6035					
  6036					
  6037	114424	   015		
  6038	114425	   012			FSMSG:	.ASCIZ /
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 170
		CONS11 PAL[KL,SYS]	Page 61.4 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  6039	114426	   127		
  6040	114427	   101		
  6041	114430	   111		
  6042	114431	   124		
  6043	114432	   123		
  6044	114433	   040		
  6045	114434	   103		
  6046	114435	   157		
  6047	114436	   156		
  6048	114437	   163		
  6049	114440	   157		
  6050	114441	   154		
  6051	114442	   145		
  6052	114443	   056		
  6053	114444	   040		
  6054	114445	   040		
  6055	114446	   120		
  6056	114447	   141		
  6057	114450	   163		
  6058	114451	   163		
  6059	114452	   167		
  6060	114453	   157		
  6061	114454	   162		
  6062	114455	   144		
  6063	114456	   040		
  6064	114457	   075		
  6065	114460	   040		
  6066	114461	   000		
  6067					WAITS Console.  Password = /
  6068					
  6069	114462	   015		
  6070	114463	   012			FSLOSM:	.ASCIZ /
  6071	114464	   127		
  6072	114465	   162		
  6073	114466	   157		
  6074	114467	   156		
  6075	114470	   147		
  6076	114471	   015		
  6077	114472	   012			Wrong
  6078	114473	   000		
  6079					/
  6080					PWORD:	;XLISTED OF COURSE
  6081		000004			PWLEN==.-PWORD
  6082		114500				.EVEN
  6083					
  6084					;HU command to KLDCP
  6085	114500	104022			$HU:	TTITRM
  6086						PMSG <\BYE\>
  6087	114502	104025				  $PMSG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 171
		CONS11 PAL[KL,SYS]	Page 61.5 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  6088	114504	145763				  $$CLIT
  6089	114506	004737	114040			JSR PC,HANGU1
  6090	114512	005037	147756			CLR $TTYFL		;CLEAR PADDING AMOUNT
  6091	114516	000137	100014			JMP $CONSL
  6092					
  6093					.ENDC ;IF DF TELASB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 172
		KLDCP PAL[KL,SYS]	Page 5.3 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  6094					
  6095								;breakpoints
  6096					.LIF DF BPTASB	
  6097					  .INSRT  BPNT11.PAL
  6098					
  6099								;subroutines, EMT dispatch, Initialization
  6100					.INSRT	SUB11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 173
		SUB11 PAL[KL,SYS]	Page 1 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  6101				COMMENT ⊗   VALID 00047 PAGES
  6102				C REC  PAGE   DESCRIPTION
  6103				C00001 00001
  6104				C00005 00002	.SBTTL	BASIC INITIALIZATION ROUTINE, 19-AUG-75
  6105				C00012 00003	.SBTTL	SET EOP INTERVAL TALLY, ERROR EOP
  6106				C00015 00004	.SBTTL	ERROR HALT
  6107				C00018 00005	.SBTTL	PRINT ASCIZ MESSAGE (PNTAL)
  6108				C00020 00006	.SBTTL	PRINT BUFFER LOAD ROUTINE
  6109				C00022 00007	.SBTTL	TELETYPE PRINT OUTPUT ROUTINE
  6110				C00024 00008	.SBTTL	TELETYPE DRIVER
  6111				C00028 00009	.SBTTL	LINE PRINTER DRIVER
  6112				C00032 00010	OPERATOR INTERRUPT TYPEIN CHECKS
  6113				C00034 00011	.SBTTL	PRINT CRLF
  6114				C00036 00012	.SBTTL	PRINT LOWER 18 BITS OF 36 BIT NUMBER
  6115				C00038 00013	$PRT36:	MOV	4(R1),R0	GET THE WORD
  6116				C00040 00014	.SBTTL	PRINT OCTAL
  6117				C00042 00015	.SBTTL	CONVERT BINARY TO DECIMAL AND TYPE ROUTINE
  6118				C00045 00016	.SBTTL	TTY INPUT ROUTINE TTICHR
  6119				C00047 00017	.SBTTL	TTIYES YES OR NO ROUTINE
  6120				C00048 00018	.SBTTL	READ SWITCH REGISTER
  6121				C00050 00019	.SBTTL	INPUT A STRING FROM TTY
  6122				C00052 00020	82$:	CMPB	(R1),#141
  6123				C00054 00021	SPECIAL CHAR PROCESS
  6124				C00056 00022	SPECIAL CHARACTERS
  6125				C00057 00023	.SBTTL	CTY & FSTTY DL11 DRIVERS
  6126				C00060 00024	.SBTTL	READ AN OCTAL NUMBER FROM THE TTY
  6127				C00062 00025	.SBTTL	READ A DECIMAL NUMBER FROM THE TTY
  6128				C00064 00026	.SBTTL	READ A 12 DIGIT OCTAL (36 BIT) NUMBER
  6129				C00066 00027	3$:	MOV	R5,$INPTC	RESET INPUT POINTER
  6130				C00068 00028	8$:	TSTB	$0FLG
  6131				C00070 00029	.SBTTL	SIGNED MULTIPLY SUBROUTINE
  6132				C00072 00030	.SBTTL	BREAK CHARACTER
  6133				C00074 00031	.SBTTL	TELETYPE INPUT TERMINATION CHECK
  6134				C00076 00032	.SBTTL	INPUT & CHECK OCTAL NUMBER
  6135				C00077 00033	.SBTTL	SHIFT R0 RIGHT/LEFT ROUTINES
  6136				C00079 00034	.SBTTL	SMALL TIME DELAY
  6137				C00080 00035	FATAL VECTOR INTERRUPT
  6138				C00081 00036	.SBTTL	EMT DECODER
  6139				C00083 00037		$PNTNBR		EMT + 30
  6140				C00085 00038		$DPSVT		EMT + 110
  6141				C00087 00039		$RPLKUP		EMT + 170
  6142				C00089 00040	.SBTTL	POWER DOWN AND UP ROUTINES
  6143				C00092 00041	.SBTTL	EXIT SUBROUTINE
  6144				C00093 00042	.SBTTL	PDP10 OPERATIONS
  6145				C00100 00043	$D10ADR:MOV	#L10ADR,R4
  6146				C00103 00044	START MICROCODE
  6147				C00104 00045	PDP-10 INSTRUCTION EXECUTE
  6148				C00105 00046	PDP-10 CONTROLLED STOP ROUTINE
  6149				C00107 00047		.SBTTL	CLOCK INITIALIZATION, INTERRUPTS
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 174
		SUB11 PAL[KL,SYS]	Page 1.1 	FIELD SERVICE TELETYPE INTERRUPT HANDLER - FSRINT, FSTINT, $HU

  6150				C00110 ENDMK
  6151					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 175
		SUB11 PAL[KL,SYS]	Page 2 	BASIC INITIALIZATION ROUTINE, 19-AUG-75

  6152					.SBTTL	BASIC INITIALIZATION ROUTINE, 19-AUG-75
  6153					
  6154					;*THIS SUBROUTINE PERFORMS THE MOST ELEMENTARY SET UP FOR THE CPU
  6155					;*THIS ROUTINE MUST BE EXECUTED BY ALL OF THE POSSIBLE START
  6156					;*OPTIONS PRIOR TO ANY OTHER SUBROUTINE
  6157					
  6158	114522	012706	157776		$$ILOAD:MOV	#STACK,SP			;START HERE FIRST TIME
  6159	114526	012701	002435			MOV	#<<.DELAY-$ILDCLR>/2>,R1
  6160	114532	012700	152226			MOV	#$ILDCLR,R0
  6161	114536	005020			1$:	CLR	(R0)+		;CLEAR SPECIAL CONTROL WORDS
  6162	114540	005301				DEC	R1
  6163	114542	003375				BGT	1$
  6164	114544	012737	000017	157252		MOV	#17,CLKDFL+4	;INITIAL DEFAULT, ALL 4 CACHES
  6165	114552	012737	000036	157262		MOV	#36,PEBITS	;INITIAL DEFAULT, AR/ARX, FM, CRAM, DRAM
  6166									;AND NOT FS PROBE, PARITY STOP ENABLES
  6167	114560	004737	115174			JSR	PC,$CKSUM	;CHECKSUM "KLDCP"
  6168	114564	010037	157314			MOV	R0,$ILDSUM	;SAVE
  6169					
  6170	114570	012737	000140	177776	$SBRINT:MOV	#CPUPR,PS	;SET CPU PRIORITY	;NORMAL START (100000)
  6171	114576	012706	157776			MOV	#STACK,SP	;SET THE STACK POINTER
  6172					
  6173					.IF DF %%DDT
  6174					;	MOV	#CPUPR,%DDTS	;CPU PRIORITY FOR DDT
  6175	114602	013746	000014			MOV	@#14,-(SP)	;PUSH 14 AND 16
  6176	114606	013746	000016			MOV	@#16,-(SP)	;TO ALLOW DDT BREAKPOINT TRAPS
  6177					.ENDC
  6178					
  6179					.IF DF %%QMP
  6180	114612	013701	000776			MOV	776,R1		;Save location 776
  6181					.ENDC
  6182					
  6183	114616	005000				CLR	R0		;SET ENTIRE VECTOR AREA TO:
  6184	114620	012720	122702		1$:	MOV	#$FATLE,(R0)+	;	;ADDRESS OF ERROR HANDLER
  6185	114624	012720	000340			MOV	#PR7,(R0)+	;	;PR7
  6186	114630	020027	001000			CMP	R0,#1000
  6187	114634	002771				BLT	1$
  6188					
  6189					.IF DF %%QMP
  6190	114636	020127				CMP	R1,(PC)+	;did 776 contain JMP (R0)?
  6191	114640	000110				JMP	(R0)		;if so, we were started by WAITS
  6192	114642	001003				BNE	99$		;and must go into monitor mode.
  6193	114644	052737	100000	000776		BIS	#100000,776	;set sign bit in 776.
  6194					99$:
  6195					.ENDC
  6196					
  6197	114652	012737	122712	000004		MOV	#$TIMOT,@#ERRVEC ;TIME OUT BUS ERROR VECTOR
  6198	114660	012737	122722	000010		MOV	#$RESVD,@#RESVEC ;RESERVED INSTRUCTION VECTOR
  6199	114666	012737	123616	000024		MOV	#$PWRDN,@#PWRVEC ;POWER FAIL VECTOR
  6200					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 176
		SUB11 PAL[KL,SYS]	Page 2.1 	BASIC INITIALIZATION ROUTINE, 19-AUG-75

  6201					.LIF DF BPTASB
  6202						MOV	#$BRKPT,@#IOTVEC ;IOT VECTOR
  6203					
  6204	114674	012737	123024	000030		MOV	#$EMTRP,@#EMTVEC ;EMT VECTOR
  6205					
  6206					.IF DF %%DDT
  6207	114702	012637	000016			MOV	(SP)+,@#16	;FOR DDT, POP BREAKPOINT TRAP
  6208	114706	012637	000014			MOV	(SP)+,@#14
  6209					.IFF
  6210						MOV	#.BCCT,@#BPTVEC	;SET BP VECTOR
  6211					.ENDC
  6212					
  6213					.IF DF SAILVR
  6214	114712	004737	125746			JSR	PC,CLKSTA		;CLOCK START (AFTER CLOBBERING INTERRUPTS)
  6215	114716	012737	000140	000032		MOV	#CPUPR,@#EMTVEC+2	;SO EMTS DON'T AFFECT PROCESSOR PRIORITY
  6216					.ENDC
  6217					
  6218					.IF DF TELASB
  6219	114724	012777	000004	763076		MOV #DLRTS,@$FSTKS		;INITIALIZE
  6220	114732	012777	113456	763100		MOV #FSRINT,@$FSTRV		;SETUP FS KL11E RECEIVE TRAP VECTOR
  6221	114740	012777	114160	763074		MOV #FSTINT,@$FSTTV		;SETUP FS KL11E TRANSMIT TRAP VECTOR
  6222	114746	012700	116100			MOV #40000.,R0			;40000*2.36USEC = 94.4 MS
  6223	114752	077001				SOB R0,.			;WAIT FOR DATA SET TO HANG UP
  6224	114754	052777	000046	763046		BIS #DLRTS!DLDTR!DLDIE,@$FSTKS	;SET DATA TERM READY AND DATA SET INT ENB
  6225							;LEAVE REQUEST TO SEND UP ALTHOUGH WE DON'T USE IT
  6226					.ENDC ;IF DF TELASB
  6227					
  6228					.IF DF CLKASB
  6229	114762	012777	111760	763064		MOV #TCUINT,@$CLKTV		;SET UP TCU-100 TRAP VECTOR
  6230					.ENDC ;IF DF CLKASB
  6231					
  6232	114770	012700	147422		11$:	MOV	#BUFCLR,R0	;CLEAR BUFFER STORAGE BETWEEN:
  6233	114774	005020			21$:	CLR	(R0)+		;BUFCLR: AND .DELAY !
  6234	114776	020027	152226			CMP	R0,#$ILDCLR
  6235	115002	001374				BNE	21$
  6236	115004	010637	147736			MOV	SP,$KONSP
  6237					
  6238	115010	005037	077776			CLR	CONSOL-2
  6239					
  6240	115014	104217				TTPINI			;RESET TTY POINTERS
  6241					
  6242	115016	012737	000204	150000		MOV	#132.,$PGWID	;SET PAGE WIDTH PARAMETER (LA36!)
  6243	115024	012737	000000	147756		MOV	#0,$TTYFL	;SET FILL PARAMETER TO (LA36!)
  6244	115032	104043				PFORCE			;MUST TYPE STARTUP
  6245	115034	012737	115154	000004		MOV	#NOPAR,ERRVEC	;SET BUS TIMEOUT IN CASE NO PARITY
  6246	115042	012737	124100	000114		MOV	#MEMPE,MMLPIV	;SETUP PARITY VECTOR
  6247	115050	012737	000001	172100		MOV	#MMPIE,MMLPBA	;ENABLE PARITY ERRORS
  6248	115056	012737	122712	000004		MOV	#$TIMOT,ERRVEC	;RESTORE BUS TIMEOUT
  6249					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 177
		SUB11 PAL[KL,SYS]	Page 2.2 	BASIC INITIALIZATION ROUTINE, 19-AUG-75

  6250	115064	005737	157316			TST	$ONETM
  6251	115070	001010				BNE	3$
  6252					
  6253					.LIF DF BPTASB
  6254						JSR	PC,.CB		;CLEAR BP'S
  6255					
  6256					.IF DF SAILVR
  6257						PMSG	<\Stanford KLDCP - QMP/EN\>
  6258	115072	104025				  $PMSG
  6259	115074	145771				  $$CLIT
  6260	115076	012700	157240			MOV	#SWS10,R0	;setup initial switches to 3,,600000
  6261	115102	005020				CLR	(R0)+		;bits 20:35
  6262	115104	052720	000017			BIS	#17,(R0)+	;bits 04:19
  6263	115110	005010				CLR	(R0)		;bits 0:3
  6264					.IFF
  6265						PMSG	<\DECSYSTEM10 DIAGNOSTIC CONSOLE\VERSION >
  6266						MOV	#MCNVER,R0
  6267						PNTOCS
  6268						PNTCI
  6269						'.
  6270						MOV	#DECVER,R0
  6271						PNTOCS
  6272					;.IF DF SAILVR
  6273					;	PMSG	<, Stanford version >
  6274					;	MOV	#SAILVR,R0
  6275					;	PNTOCS
  6276					;.ENDC
  6277						PMSG	<\11 SWR = >
  6278						MOV	SWR,R0
  6279						PNTOCT			;PRINT CONSOLE SWITCHES
  6280						PCRLF
  6281					.ENDC
  6282					
  6283	115112	004737	140620		3$:	JSR	PC,DTEINI	;DTE20 INITIALIZATION
  6284					
  6285					.IF NDF SAILVR
  6286						TST	DEVTYP		;USING RP04 ?
  6287						BLE	4$		;NO
  6288						RPLOAD			;YES, INIT & LOAD PACK
  6289						 BCC	4$
  6290						RPERROR			;FAILED
  6291					.ENDC
  6292					
  6293					4$:
  6294					.IF DF %%QMP
  6295	115116	005737	000776			TST	776		;were we loaded and started by the 10?
  6296	115122	002010				BGE	44$		;branch if not
  6297	115124	104055				SETFLG
  6298	115126	147666				  MONMODE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 178
		SUB11 PAL[KL,SYS]	Page 2.3 	BASIC INITIALIZATION ROUTINE, 19-AUG-75

  6299	115130	104055				SETFLG
  6300	115132	147670				  TENRUN
  6301	115134	104055				SETFLG
  6302	115136	147614				  PRGRUN
  6303	115140	104055				SETFLG
  6304	115142	147664				  MTTYOF
  6305					.ENDC
  6306						
  6307					44$:
  6308					.LIF DF %%QMP
  6309	115144	004737	137542			JSR	PC,QMPINI	;initialize QMP
  6310					
  6311	115150	000137	100106			JMP	CONSL		;NOW TO CONSOLE
  6312					
  6313	115154	000002			NOPAR:	RTI			;NO PARITY REGISTER
  6314					
  6315	115156	012700	152172		$CMCLR:	MOV	#$CMTAG,R0	;CLEAR COMMON STORAGE
  6316	115162	005020			1$:	CLR	(R0)+
  6317	115164	020027	152222			CMP	R0,#MONCTL
  6318	115170	002774				BLT	1$
  6319	115172	000207				RTS	PC
  6320					
  6321	115174	005037	101140		$CKSUM:	CLR	$KDCEN		;CLEAR ONLY CHANGEABLE LOCATION
  6322	115200	012701	100000			MOV	#START,R1
  6323	115204	005000				CLR	R0
  6324	115206	062100			2$:	ADD	(R1)+,R0	;CHECKSUM "KLDCP"
  6325	115210	020137	144716			CMP	R1,$$FF
  6326	115214	101774				BLOS	2$
  6327	115216	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 179
		SUB11 PAL[KL,SYS]	Page 3 	SET EOP INTERVAL TALLY, ERROR EOP

  6328					.SBTTL	SET EOP INTERVAL TALLY, ERROR EOP
  6329					.IF NDF %%EOP
  6330					
  6331					$EOPSET:
  6332					$EOP:
  6333	115220	104000			$ERREOP:FATAL
  6334					.ENDC
  6335					
  6336					.IF DF %%EOP
  6337					$EOPSET:MOV	R0,$ENDCT	;SET EOP INTERVAL TALLY
  6338						EXIT
  6339					
  6340					;CONSOLE SET EOP INTERVAL
  6341					
  6342					.EP:	TTISDL
  6343						 BCS	1$
  6344						TTIDEC			;SPECIFIED AS DECIMAL INTERVAL
  6345						 BCS	1$
  6346						MOV	R0,$ENDCT
  6347						CLR	$EOPCT
  6348						JMP	$KONSL
  6349					1$:	JMP	$PARAM
  6350					
  6351					.SBTTL	END OF PASS ROUTINE
  6352					
  6353					$EOP:	MOV	#$PASS,R5
  6354						INC	(R5)		;INCREMENT THE PASS NUMBER
  6355						CMP	(R5),#30001.	;LIMIT MAX COUNT TO 30000
  6356						BLT	4$
  6357						CLR	(R5)
  6358						INC	(R5)
  6359						MOV	$ENDCT,$EOPCT	;RESET REPORT INTERVAL
  6360					
  6361					4$:	MOV	(R5),SWR	;DISPLAY PASS COUNT
  6362						SWITCH			;READ THE SWITCH REGISTER
  6363					
  6364						BIT	R0,#ABORT	;ABORT AFTER CURRENT PASS?
  6365						BNE	1$		;YES
  6366					
  6367						DEC	$EOPCT		;DECREMENT EOP
  6368						BGT	3$
  6369						BR	2$
  6370					
  6371					1$:	MOV	#1,$ITERA	;SET ITERATION SO WE WILL EXIT
  6372					2$:	PMSG	<END PASS >
  6373					
  6374						MOV	(R5),R0		;PASS COUNT TO  R0
  6375						PNTDEC
  6376						PCRLF
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 180
		SUB11 PAL[KL,SYS]	Page 3.1 	SET EOP INTERVAL TALLY, ERROR EOP

  6377					
  6378						MOV	$ENDCT,$EOPCT	;RESTORE COUNTER
  6379					
  6380					3$:	DEC	$ITERA		;DECREMENT ITERATION COUNT
  6381						BEQ	$ERREOP
  6382						CLR	$ITERA
  6383						EXIT
  6384					
  6385					$ERREOP:TST	MONCTL		;STAND ALONE ?
  6386						BNE	$EROP		;NO, *WHAT TO DO ??*
  6387						CLR	TENRUN		;TURN OFF TEN SUPPORT
  6388						CLR	PRGRUN		;YES, ALLOW "J" AGAIN
  6389					
  6390					$EROP:	JMP	CONSL		;MONITOR, TO NEXT SCRIPT ENTRY
  6391					
  6392					.ENDC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 181
		SUB11 PAL[KL,SYS]	Page 4 	ERROR HALT

  6393					.SBTTL	ERROR HALT
  6394					
  6395					$PRGHLT:PUSH	R0
  6396						PMSG	<\PRG>
  6397	115224	104025				  $PMSG
  6398	115226	146023				  $$CLIT
  6399	115230	000412				BR	$PH2
  6400					
  6401					$ERRHLT:PUSH	R0
  6402	115234	104057				SWITCH
  6403	115236	030027	000400			BIT	R0,#ERSTOP	;STOP ON ERROR ?
  6404	115242	001003				BNE	1$		;YES
  6405						POP	R0
  6406						EXIT			;NO, KEEP GOING
  6407	115246	000137	124064			  JMP	$EXIT
  6408					
  6409					1$:	PMSG	<\ERROR>
  6410	115252	104025				  $PMSG
  6411	115254	146030				  $$CLIT
  6412					
  6413	115256	104055			$PH2:	SETFLG
  6414	115260	147610				  .HCFLG		;ALLOW HALT CONTINUE
  6415					
  6416	115262	012637	147636		$PH1:	MOV	(SP)+,$R0SAV	;SETUP SO "RG" CAN PRINT
  6417	115266	012700	147652			MOV	#$R5SAV+2,R0
  6418	115272	012640				MOV	(SP)+,-(R0)	;R5 to $R5SAV
  6419	115274	012640				MOV	(SP)+,-(R0)	;R4 to $R4SAV
  6420	115276	012640				MOV	(SP)+,-(R0)	;R3 to $R3SAV
  6421	115300	012640				MOV	(SP)+,-(R0)	;R2 to $R2SAV
  6422	115302	012640				MOV	(SP)+,-(R0)	;R1 to $R1SAV
  6423	115304	012637	147606			MOV	(SP)+,.HCADR	;halt/continue address (if needed)
  6424	115310	012637	147654			MOV	(SP)+,$PSSAV	;halt/continue PS.
  6425	115314	010637	147652			MOV	SP,$SPSAV	;save dead SP
  6426						PMSG	< HALT AT >
  6427	115320	104025				  $PMSG
  6428	115322	146037				  $$CLIT
  6429	115324	013700	147606			MOV	.HCADR,R0	;GET ADDRESS
  6430	115330	162700	000002			SUB	#2,R0		;COMPUTE ACTUAL ADDRESS
  6431	115334	104035				PNTOCT			;PRINT ERROR HALT ADDRESS
  6432	115336	104031				PCRLF
  6433	115340	104043				PFORCE
  6434	115342	005002				CLR	R2		;REGISTER NUMBER
  6435	115344	012701	147636			MOV	#$R0SAV,R1	;REG SAVE TABLE POINTER
  6436	115350	104214			1$:	PNTCI
  6437	115352	000122				'R
  6438	115354	010200				MOV	R2,R0		;register number
  6439	115356	104030				PNTNBR			;PRINT REGISTER NUMBER
  6440	115360	104033			4$:	PSLASH
  6441	115362	012100			2$:	MOV	(R1)+,R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 182
		SUB11 PAL[KL,SYS]	Page 4.1 	ERROR HALT

  6442	115364	104035				PNTOCT			;PRINT CONTENTS
  6443	115366	104031				PCRLF
  6444	115370	005202				INC	R2
  6445	115372	020227	000006			CMP	R2,#6
  6446	115376	002764				BLT	1$		;loop for zero to 5
  6447	115400	003003				BGT	3$		;exit for 7
  6448	115402	104214				PNTCI
  6449	115404	050123				"SP
  6450	115406	000764				BR	4$		;print R6 as SP
  6451					
  6452	115410	005002			3$:	CLR	R2		;Count of stack frames
  6453	115412	013701	147652			MOV	$SPSAV,R1	;Stack top address
  6454	115416	010100			91$:	MOV	R1,R0
  6455	115420	104035				PNTOCT
  6456	115422	104033				PSLASH
  6457	115424	012100				MOV	(R1)+,R0
  6458	115426	104035				PNTOCT			;PRINT CONTENTS
  6459	115430	104031				PCRLF
  6460	115432	020127	160000			CMP	R1,#COREND
  6461	115436	002004				BGE	92$
  6462	115440	005202				INC	R2
  6463	115442	020227	000006			CMP	R2,#6
  6464	115446	002763				BLT	91$		;loop to display several stack items
  6465	115450	005737	147610		92$:	TST	.HCFLG		;is this a continuable halt?
  6466	115454	001402				BEQ	93$		;BR if not
  6467	115456	000137	100014			JMP	$CONSL		;RETURN TO MONITOR
  6468					
  6469					93$:
  6470					.LIF DF %%DDT
  6471	115462	000137	056000			JMP	56000
  6472					
  6473					.LIF NDF %%DDT
  6474						JMP	$SBRINT		;major crash.  nearly major reload
  6475					
  6476	115466	005737	147610		.HC:	TST	.HCFLG
  6477	115472	001002				BNE	1$
  6478	115474	000137	100574			JMP	$CMDER		;HC NOT ALLOWED
  6479	115500	005037	147610		1$:	CLR	.HCFLG
  6480					
  6481					.LIF DF BPTASB
  6482						JSR	PC,.BCHC
  6483					
  6484	115504	013706	147652			MOV	$SPSAV,R6
  6485	115510	013737	147654	177776		MOV	$PSSAV,PS
  6486	115516	000177	032064			JMP	@.HCADR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 183
		SUB11 PAL[KL,SYS]	Page 5 	PRINT ASCIZ MESSAGE (PNTAL)

  6487					.SBTTL	PRINT ASCIZ MESSAGE (PNTAL)
  6488					
  6489	115522	142710	000200		$PNTAL:	BICB	#200,(R0)	;CLEAR JUNK
  6490	115526	105710				TSTB	(R0)		;REACHED EOL YET?
  6491	115530	001430				BEQ	3$		;YES
  6492	115532	005737	150722			TST	HLPPNT		;PRINTING A HELP FILE
  6493	115536	001006				BNE	4$		;YES
  6494	115540	121027	000137			CMPB	(R0),#BKARW	;BACKARROW (-)?
  6495	115544	001416				BEQ	2$		;YES
  6496	115546	121027	000134			CMPB	(R0),#BKSLH	;BACKSLASH (\)?
  6497	115552	001403				BEQ	1$
  6498	115554	112001			4$:	MOVB	(R0)+,R1	;PUT CHAR IN R1
  6499	115556	104154				PLDBUF			;LOAD INTO OUTPUT BUFFER
  6500	115560	000760				BR	$PNTAL		;DO TILL E-O-L
  6501					
  6502	115562	012701	000015		1$:	MOV	#CR,R1		;BACKSLASH
  6503	115566	104154				PLDBUF			;OUTPUT CR & LF
  6504	115570	012701	000012			MOV	#LF,R1
  6505	115574	104154				PLDBUF
  6506	115576	005200			11$:	INC	R0
  6507	115600	000750				BR	$PNTAL
  6508					
  6509	115602	005037	147770		2$:	CLR	CTRLOF		;CLEAR CONTROL O FLAG
  6510	115606	104151				PRINTT			;BACKARROW, PRINT BUFFER
  6511	115610	000772				BR	11$
  6512					
  6513	115612	000406			3$:	BR	$$PNTX
  6514					
  6515					.SBTTL	PRINT ASCII NUMBER (PNTNBR)
  6516					
  6517	115614	042700	177770		$PNTNBR:BIC	#177770,R0
  6518	115620	052700	000060			BIS	#'0,R0
  6519					
  6520					.SBTTL	PRINT ASCII CHARACTER (PNTCHR)
  6521					
  6522	115624	110001			$PNTCHR:MOVB	R0,R1
  6523	115626	104154				PLDBUF
  6524					$$PNTX:	EXIT
  6525	115630	000137	124064			  JMP	$EXIT
  6526					
  6527	115634	012700	000040		$PSPACE: MOV	#SPACE,R0
  6528	115640	000771				BR	$PNTCHR
  6529					
  6530	115642	012700	000057		$PSLASH: MOV	#SLASH,R0
  6531	115646	000766				BR	$PNTCHR
  6532					
  6533	115650	012700	000054		$PCOMMA: MOV	#COMMA,R0
  6534	115654	000763				BR	$PNTCHR
  6535					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 184
		SUB11 PAL[KL,SYS]	Page 5.1 	PRINT ASCII CHARACTER (PNTCHR)

  6536	115656	012700	000011		$PTAB:	MOV	#TAB,R0
  6537	115662	000760				BR	$PNTCHR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 185
		SUB11 PAL[KL,SYS]	Page 6 	PRINT BUFFER LOAD ROUTINE

  6538					.SBTTL	PRINT BUFFER LOAD ROUTINE
  6539					
  6540					$PLDBUF:PUSH	R0
  6541	115666	013700	150474			MOV	$OUTPT,R0
  6542	115672	042701	177600			BIC	#177600,R1	;STRIP TO 7 BITS
  6543	115676	110120				MOVB	R1,(R0)+	;PUT CHAR IN BUFFER
  6544	115700	105010				CLRB	(R0)		;INSERT TRAILING NULL
  6545	115702	010037	150474			MOV	R0,$OUTPT
  6546						POP	R0
  6547	115710	023727	150474	150470		CMP	$OUTPT,#$OUTBF+140.;EXCEEDED BUFFER CAPACITY
  6548	115716	002012				BGE	2$
  6549					
  6550	115720	122701	000012		1$:	CMPB	#LF,R1		;WAS CHAR LINE FEED
  6551	115724	001407				BEQ	2$		;YES
  6552	115726	122701	000007			CMPB	#BELL,R1	;WAS CHAR BELL ?
  6553	115732	001404				BEQ	2$		;YES
  6554	115734	122701	000000			CMPB	#NULL,R1	;WAS CHAR NULL ?
  6555	115740	001401				BEQ	2$		;YES
  6556	115742	000732			3$:	BR	$$PNTX		;NO, RETURN
  6557					
  6558	115744	005737	152212		2$:	TST	PCMDNF		;DOING NO PRINT PROGRAM COMMAND
  6559	115750	001374				BNE	3$
  6560					
  6561					.LIF DF LPTASB
  6562						PLPT			;LINE PRINTER
  6563					
  6564	115752	104151				PRINTT			;PRINT BUFFER
  6565	115754	005037	147764			CLR	$TTLKF		;CLEAR TTLOOK  FLAG
  6566						PUSH	R0
  6567	115762	104215				PNTRST			;RESET OUTPUT POINTERS
  6568						POP	R0
  6569	115766	000765				BR	3$
  6570					
  6571					;PRINT, BACKUP OUTPUT INSERTION POINTER
  6572					
  6573	115770	023727	150474	150254	$PNTBAK:CMP	$OUTPT,#$OUTBF	;ALL THE WAY BACK ?
  6574	115776	003402				BLE	1$		;YES
  6575	116000	005337	150474			DEC	$OUTPT		;NO, BACKUP ONE BYTE
  6576	116004	000711			1$:	BR	$$PNTX
  6577					
  6578					;TELETYPE POINTER INITIALIZATION
  6579					
  6580	116006	012737	150500	150716	$TTPINI:MOV	#$INBUF,$INPTC
  6581	116014	012737	150500	150720		MOV	#$INBUF,$INPTR
  6582					
  6583	116022	012700	150254		$PNTRST:MOV	#$OUTBF,R0
  6584	116026	010037	150474			MOV	R0,$OUTPT
  6585	116032	010037	150472			MOV	R0,$OUTPP
  6586	116036	000674				BR	$$PNTX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 186
		SUB11 PAL[KL,SYS]	Page 7 	TELETYPE PRINT OUTPUT ROUTINE

  6587					.SBTTL	TELETYPE PRINT OUTPUT ROUTINE
  6588					
  6589					$PRINT:	PUSH	R0
  6590	116042	005737	147760			TST	$FORCE		;FORCED PRINT OUT
  6591	116046	001014				BNE	19$		;YES BYPASS SWITCH TEST
  6592					
  6593	116050	105737	157304			TSTB	LPTFLG		;PRINT ON LPT ?
  6594	116054	001004				BNE	99$		;BR IF YES
  6595					
  6596	116056	104057				SWITCH
  6597	116060	030027	010000			BIT	R0,#NOPNT	;PRINTOUT INHIBITED
  6598	116064	001407				BEQ	1$
  6599					
  6600	116066	013737	150474	150472	99$:	MOV	$OUTPT,$OUTPP	;DONE, SET PRINTED TO POSITION
  6601						POP	R0
  6602	116076	000654				BR	$$PNTX		;RETURN
  6603					
  6604	116100	005037	147770		19$:	CLR	CTRLOF		;CLEAR CONTROL O FLAG
  6605	116104	013701	150472		1$:	MOV	$OUTPP,R1
  6606					
  6607	116110	122711	000015		11$:	CMPB	#CR,(R1)	;IS CHAR CR?
  6608	116114	001412				BEQ	2$		;BR IF YES
  6609	116116	023737	150002	150000		CMP	$PRNTH,$PGWID	;NO,ARE WE AT RIGHT MARGIN
  6610	116124	002410				BLT	3$		;BR IF NO
  6611	116126	112700	000015			MOVB	#CR,R0		;YES, FREE CR/LF
  6612	116132	104152				PTTY
  6613	116134	112700	000012			MOVB	#LF,R0
  6614	116140	104152				PTTY
  6615					
  6616	116142	005237	147774		2$:	INC	$TPLIT		;COUNT LINE
  6617					
  6618	116146	111100			3$:	MOVB	(R1),R0		;GET CHARACTER
  6619	116150	001746				BEQ	99$		;IF NULL, DONE
  6620	116152	104152				PTTY			;PRINT CHAR
  6621	116154	105721				TSTB	(R1)+		;LOOP TILL E-O-L
  6622	116156	001354				BNE	11$
  6623	116160	004737	110742		4$:	JSR	PC,C10COP
  6624	116164	004737	120776			JSR	PC,$TORDY	;THEN WAIT FOR TTY TO BE READY
  6625	116170	103773				BCS	4$
  6626	116172	000735				BR	99$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 187
		SUB11 PAL[KL,SYS]	Page 8 	TELETYPE DRIVER

  6627					.SBTTL	TELETYPE DRIVER
  6628					
  6629	116174	005002			$PTTY:	CLR	R2
  6630	116176	005003				CLR	R3
  6631	116200	004737	116546		1$:	JSR	PC,$PTTYC	;DO OPERATOR CHECKS
  6632	116204	005703				TST	R3		;R3 = 0 IF NOTHING
  6633	116206	001410				BEQ	4$
  6634	116210	122703	000021		2$:	CMPB	#XON,R3
  6635	116214	001407				BEQ	6$		;XON,PRINT
  6636	116216	122703	000023			CMPB	#XOFF,R3
  6637	116222	001002				BNE	4$
  6638	116224	012702	777777		3$:	MOV	#-1,R2		;XOFF,STOP PRINT
  6639	116230	005702			4$:	TST	R2
  6640	116232	001362				BNE	1$		;IF XOFF, WAIT FOR XON
  6641	116234	005737	147770		6$:	TST	CTRLOF		;CONTROL O'D ?
  6642	116240	001015				BNE	7$		;YES
  6643	116242	122700	000015			CMPB	#CR,R0		;CR
  6644	116246	001012				BNE	7$
  6645	116250	005737	147776			TST	$TPLIN		;YES, IN PAGE MODE
  6646	116254	001407				BEQ	7$		;NO
  6647	116256	023737	147774	147776		CMP	$TPLIT,$TPLIN	;FILLED THIS PAGE
  6648	116264	002403				BLT	7$
  6649	116266	005037	147774			CLR	$TPLIT		;YES,CLEAR COUNTER,XOFF
  6650	116272	000754				BR	3$
  6651					
  6652	116274	005002			7$:	CLR	R2
  6653	116276	122700	000011			CMPB	#CNTRLI,R0	;IS CHAR A TAB?
  6654	116302	001005				BNE	10$
  6655	116304	004737	116516		8$:	JSR	PC,$PTTY1	;COMPUTE SPACES COUNT
  6656	116310	005202			9$:	INC	R2		;COMPLETED "TAB"?
  6657	116312	112700	000040			MOVB	#BLANK,R0
  6658					
  6659	116316	004737	110742		10$:	JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
  6660	116322	005737	147770			TST	CTRLOF
  6661	116326	001011				BNE	11$
  6662	116330	004737	120776			JSR	PC,$TORDY	;WAIT TILL TTY IS READY
  6663	116334	103770				BCS	10$
  6664	116336	110037	147742			MOVB	R0,$TOCHR	;PRINT CHAR
  6665	116342	004737	121040			JSR	PC,$TOOUT
  6666	116346	004737	116532		19$:	JSR	PC,$PTTY2	;WILL CHAR MOVE PRINT HEAD ?
  6667					
  6668	116352	005702			11$:	TST	R2		;DOING SPACES?
  6669	116354	001355				BNE	9$		;BR IF YES
  6670	116356	005737	147770			TST	CTRLOF
  6671	116362	001053				BNE	15$
  6672	116364	012702	144636			MOV	#$DTBL0,R2	;FILLER PROCESS
  6673	116370	105712			12$:	TSTB	(R2)
  6674	116372	001447				BEQ	15$		;BR IF CHAR DOESN'T REQUIRE FILLS
  6675	116374	122200				CMPB	(R2)+,R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 188
		SUB11 PAL[KL,SYS]	Page 8.1 	TELETYPE DRIVER

  6676	116376	001374				BNE	12$
  6677	116400	005302				DEC	R2		;FOUND
  6678	116402	162702	144636			SUB	#$DTBL0,R2
  6679	116406	006302				ASL	R2
  6680	116410	016202	144642			MOV	$DTBL1(R2),R2	;ADDRESS TO R2
  6681	116414	063702	147756			ADD	$TTYFL,R2	;ADD FILL PARAMETER
  6682	116420	111202				MOVB	(R2),R2		;R2 = NUMBER OF FILLS
  6683	116422	120027	000015			CMPB	R0,#CR		;CR?
  6684	116426	001014				BNE	13$		;NO
  6685	116430	023727	150002	000017		CMP	$PRNTH,#15.	;MORE THEN 15 CHARS ON LINE ?
  6686	116436	003001				BGT	16$
  6687						SR	R2,1		;NO, 1/4 TH OF FILLERS THEN
  6688	116442	023727	150002	000050	16$:	CMP	$PRNTH,#40.	;MORE THAN 40 CHARS ON LINE ?
  6689	116450	003001				BGT	17$
  6690						SR	R2,1		;NO, 1/2 OF FILLERS THEN
  6691	116454	005037	150002		17$:	CLR	$PRNTH		;SET PRINT HEAD TO LEFT MARGIN
  6692					
  6693	116460	005302			13$:	DEC	R2		;COMPLETED FILLERS?
  6694	116462	002413				BLT	15$
  6695	116464	004737	110742		14$:	JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
  6696	116470	004737	120776			JSR	PC,$TORDY
  6697	116474	103773				BCS	14$
  6698	116476	112737	000000	147742		MOVB	#NULL,$TOCHR	;SEND FILLER
  6699	116504	004737	121040			JSR	PC,$TOOUT
  6700	116510	000763				BR	13$
  6701					15$:	EXIT			;RETURN
  6702	116512	000137	124064			  JMP	$EXIT
  6703					
  6704	116516	013702	150002		$PTTY1:	MOV	$PRNTH,R2	;HEAD POSITION
  6705	116522	162702	000010		1$:	SUB	#8.,R2		;DIVIDED BY 8
  6706	116526	002375				BGE	1$		;REMAINDER IS SPACES COUNT
  6707	116530	000207				RTS	PC
  6708					
  6709	116532	120027	000040		$PTTY2:	CMPB	R0,#BLANK	;WILL CHAR MOVE PRINT HEAD?
  6710	116536	002402				BLT	1$		;BR IF NO
  6711	116540	005237	150002			INC	$PRNTH		;YES
  6712	116544	000207			1$:	RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 189
		SUB11 PAL[KL,SYS]	Page 9 	LINE PRINTER DRIVER

  6713					.SBTTL	LINE PRINTER DRIVER
  6714					
  6715					.IF DF LPASB
  6716					
  6717					$PLPT:	PUSH	R0
  6718						TST	LPTFLG		;PRINT ON LPT ?
  6719						BPL	99$		;NO
  6720						TSTB	LPTFLG
  6721						BEQ	99$
  6722						TST	$FORCE		;FORCED PRINT ?
  6723						BNE	1$		;YES, BYPASS SWITCH TEST
  6724						SWITCH
  6725						BIT	R0,#NOPNT	;PRINTOUT INHIBITED ?
  6726						BEQ	1$		;NO
  6727					99$:	POP	R0
  6728						EXIT			;RETURN
  6729					
  6730					1$:	TST	LPTYPE		;LP20 OR LP11 ?
  6731						BNE	50$		;LP20
  6732						TST	@$LPS		;IS LPT OK ?
  6733						BMI	4$		;BR IF ERROR
  6734						MOV	#$OUTBF,R1
  6735					2$:	MOVB	(R1)+,R0	;GET CHAR
  6736						BEQ	99$		;NULL, DONE
  6737					3$:	CLR	R2
  6738						CMPB	#CNTRLI,R0	;TAB ?
  6739						BNE	41$
  6740						JSR	PC,$PTTY1	;YES, COMPUTE SPACES COUNT
  6741					42$:	INC	R2
  6742						MOV	#BLANK,R0
  6743					41$:	JSR	PC,$PTTYC	;DO OPERATOR CHECKS
  6744					32$:	TST	@$LPS		;LPT OK ?
  6745						BMI	4$		;NO
  6746						JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
  6747						TSTB	@$LPS		;LPT READY ?
  6748						BPL	41$		;NO
  6749						MOVB	R0,@$LPB	;PRINT CHARACTER
  6750						JSR	PC,$PTTY2	;WILL CHAR MOVE PRINT HEAD ?
  6751					45$:	TST	R2		;COMPLETED "TAB" ?
  6752						BNE	42$
  6753					43$:	CMPB	R0,#CR
  6754						BNE	44$
  6755						CLR	$PRNTH		;IF CR, RESET HEAD POSITION
  6756					44$:	BR	2$
  6757					
  6758					4$:	MOV	#$LPTOF,R1	;"LPT OFF LINE"
  6759					5$:	MOVB	(R1),R0
  6760						PTTY
  6761						TSTB	(R1)+
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 190
		SUB11 PAL[KL,SYS]	Page 9.1 	LINE PRINTER DRIVER

  6762						BEQ	6$
  6763						BR	5$
  6764					6$:	CLRB	LPTFLG		;PRINT ON TTY TILL RESELECTED
  6765						BR	99$
  6766					
  6767					50$:	MOV	LPTYPE,R5	;LP20 DRIVER ROUTINE
  6768						MOV	#LPLINI!LPRERR,(R5) ;CLEAR LP20
  6769						DEC	LPPCTR(R5)	;CLEAR PAGE COUNTER
  6770						MOV	#$OUTBF,R0	;GET BUFFER ADDRESS
  6771						MOV	R0,LPBSAD(R5)	;SETUP LP20 BUFFER ADDRESS
  6772						SUB	$OUTPT,R0	;COMPUTE BYTE COUNT
  6773						MOV	R0,LPBCTR(R5)	;SETUP LP20 BYTE COUNT
  6774						MOV	#LPPENB!LPGO,(R5) ;START XFER
  6775						JSR	PC,LP20DN	;WAIT FOR DONE
  6776						BCS	4$		;ERROR
  6777						BR	99$		;DONE
  6778					
  6779					LP20DN:	JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
  6780						BIT	#LPERR!LPPZRO!LPUCHR!LPDONE,(R5)
  6781						BEQ	LP20DN		;WAIT FOR DONE OR ERROR
  6782					
  6783						TSTB	(R5)		;DONE ?
  6784						BPL	1$		;NO, ERROR
  6785						CLC
  6786						RTS	PC		;DONE, C-BIT CLEAR RETURN
  6787					
  6788					1$:	SEC
  6789						RTS	PC		;ERROR, C-BIT SET RETURN
  6790					
  6791					$LPTOF:	.ASCIZ	/LPT OFF
  6792					/
  6793					.EVEN
  6794					
  6795					.ENDC ;.IF DF LPASB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 191
		SUB11 PAL[KL,SYS]	Page 10 	LINE PRINTER DRIVER

  6796					;OPERATOR INTERRUPT TYPEIN CHECKS
  6797					
  6798	116546	005003			$PTTYC:	CLR	R3
  6799	116550	005737	147764			TST	$TTLKF		;INPUT CHECKS INHIBITED ?
  6800	116554	001066				BNE	5$		;YES
  6801	116556	004737	120670			JSR	PC,$TIRDY	;ANY OPERATOR ACTION ?
  6802	116562	103463				BCS	5$		;NO
  6803	116564	113703	147744			MOVB	$TICHR,R3
  6804	116570	142703	000200			BICB	#200,R3
  6805	116574	010337	150024			MOV	R3,$TNCHR
  6806	116600	104176				TENCHR			;SEND CHAR TO TEN
  6807	116602	122703	000003			CMPB	#CNTRLC,R3	;CONTROL C ?
  6808	116606	001010				BNE	3$
  6809	116610	104217				TTPINI			;FLUSH REST OF OUTPUT
  6810	116612	005737	152214			TST	PCMDFLG		;DOING PROGRAM COMMAND ?
  6811	116616	001002				BNE	2$		;YES
  6812	116620	000137	120524			JMP	$TICC		;CONTROL C, RETURN TO CONSOLE
  6813					
  6814	116624	000137	101572		2$:	JMP	PCMDE2		;PROGRAM COMMAND, RETURN TO CALLER
  6815					
  6816	116630	122703	000017		3$:	CMPB	#CNTRLO,R3
  6817	116634	001021				BNE	1$
  6818	116636	005137	147770			COM	CTRLOF		;CONTROL O, STOP OUTPUT
  6819	116642	012703	116734			MOV	#$PTCO,R3
  6820	116646	004737	110742		10$:	JSR	PC,C10COP
  6821	116652	004737	120776			JSR	PC,$TORDY
  6822	116656	103773				BCS	10$
  6823	116660	112337	147742			MOVB	(R3)+,$TOCHR
  6824	116664	001002				BNE	90$
  6825	116666	005003				CLR	R3
  6826	116670	000420				BR	5$
  6827	116672	004737	121040		90$:	JSR	PC,$TOOUT
  6828	116676	000763				BR	10$
  6829	116700	122703	000014		1$:	CMPB	#CNTRLL,R3	;CONTROL L, CHANGE LPT SELECTION
  6830	116704	001005				BNE	4$
  6831	116706	005737	157304			TST	LPTFLG
  6832	116712	100002				BPL	4$
  6833	116714	105137	157304			COMB	LPTFLG		;ONLY IF SELECTED
  6834	116720	122703	000030		4$:	CMPB	#CNTRLX,R3	;CONTROL X, CONSOLE COMMAND
  6835	116724	001002				BNE	5$
  6836	116726	000137	120570			JMP	$TICX		;DO "TTILIN" & GO TO "$RPT"
  6837	116732	000207			5$:	RTS	PC
  6838					
  6839	116734	   136		
  6840	116735	   117		
  6841	116736	   015		
  6842	116737	   012			$PTCO:	.ASCIZ	/↑O
  6843	116740	   000		
  6844					/
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 192
		SUB11 PAL[KL,SYS]	Page 10.1 	LINE PRINTER DRIVER

  6845		116742			.EVEN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 193
		SUB11 PAL[KL,SYS]	Page 11 	PRINT CRLF

  6846					.SBTTL	PRINT CRLF
  6847					
  6848					$PCRLF:	PMSG	<\>
  6849	116742	104025				  $PMSG
  6850	116744	146051				  $$CLIT
  6851	116746	000524				BR	$$PEX
  6852					
  6853					.SBTTL	RING TTY BELL
  6854					
  6855	116750	112700	000007		$PBELL:	MOVB	#BELL,R0
  6856	116754	104152				PTTY			;DING THE BELL DIRECTLY
  6857	116756	000520				BR	$$PEX
  6858					
  6859					.SBTTL	PRINT SPECIFIED OCTAL DIGITS
  6860					
  6861	116760	017701	030650		$PODT:	MOV	@$EMADR,R1	;TRAILING PARAMETER
  6862	116764	062766	000002	000012		ADD	#2,12(SP)
  6863					
  6864	116772	010102			$PNTODC:MOV	R1,R2		;SETUP DIGIT COUNT
  6865	116774	003001				BGT	1$
  6866	116776	104000				FATAL
  6867	117000	020127	000006		1$:	CMP	R1,#6
  6868	117004	003401				BLE	2$
  6869	117006	104000				FATAL
  6870	117010	012701	150006		2$:	MOV	#$TTSAV+2,R1
  6871	117014	005011				CLR	(R1)		;SETUP OCTAL NUMBER
  6872	117016	010041				MOV	R0,-(R1)
  6873	117020	004737	117326			JSR	PC,$PODMV	;SETUP PARAMETERS
  6874	117024	005037	147754			CLR	$0FLG		;NO SPACE FOLLOWING NUMBER
  6875	117030	116203	117037			MOVB	$PODCD-1(R2),R3	;GET PRESET SHIFT COUNT
  6876	117034	104146				PROL36			;PRESET NUMBER
  6877	117036	000453				BR	$P23X		;GO PRINT NUMBER
  6878					
  6879	117040	   041		
  6880	117041	   036		
  6881	117042	   033		
  6882	117043	   030		
  6883	117044	   025		
  6884	117045	   022			$PODCD:	.BYTE	33.,30.,27.,24.,21.,18.
  6885					
  6886					.SBTTL	PRINT PDP-10 ADDRESS
  6887					
  6888					;PRINTS 23 BIT FORMAT IF ANY OF 13-17 ADDRESS BITS ARE SET.
  6889					;OTHERWISE PRINTS 18 BIT FORMAT.
  6890					
  6891	117046	004737	117072		$PADR:	JSR	PC,$$P23
  6892	117052	032761	000174	000004		BIT	#174,4(R1)	;ANY OF 13-17 SET ?
  6893	117060	001025				BNE	$P23Y		;YES
  6894	117062	012703	000006			MOV	#6,R3
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 194
		SUB11 PAL[KL,SYS]	Page 11.1 	PRINT PDP-10 ADDRESS

  6895	117066	104146				PROL36			;NO, DUMP HI-ORDER BITS
  6896	117070	000434				BR	$P18X		;PRINT 18 BITS
  6897					
  6898	117072	004737	117306		$$P23:	JSR	PC,$P36MV
  6899	117076	012703	000014			MOV	#12.,R3
  6900	117102	104146				PROL36			;POSITION 23 BITS
  6901	117104	042761	177600	000004		BIC	#177600,4(R1)	;CLEAR UPPER JUNK BITS
  6902	117112	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 195
		SUB11 PAL[KL,SYS]	Page 12 	PRINT LOWER 18 BITS OF 36 BIT NUMBER

  6903					.SBTTL	PRINT LOWER 18 BITS OF 36 BIT NUMBER
  6904					
  6905	117114	004737	117306		$PNT18:	JSR	PC,$P36MV
  6906					
  6907	117120	012703	000022			MOV	#18.,R3
  6908	117124	104146				PROL36			;SHIFT LOWER 18 BITS TO UPPER
  6909	117126	000415				BR	$P18X
  6910					
  6911					.SBTTL	PRINT LOWER 23 BITS OF 36 BIT NUMBER
  6912					
  6913	117130	004737	117072		$PNT23:	JSR	PC,$$P23
  6914					
  6915	117134	012702	000002		$P23Y:	MOV	#2,R2
  6916	117140	005204				INC	R4
  6917	117142	000411				BR	$P23X
  6918					
  6919					.SBTTL	PRINT 36 BIT NUMBER IN BINARY
  6920					
  6921	117144	004737	117306		$P36B:	JSR	PC,$P36MV
  6922	117150	005105				COM	R5
  6923	117152	000402				BR	$P36BX
  6924					
  6925					.SBTTL	PRINT 36 BIT NUMBER
  6926					
  6927	117154	004737	117306		$PNT36:	JSR	PC,$P36MV
  6928	117160	005204			$P36BX:	INC	R4
  6929		117162			$P18X=.
  6930					
  6931	117162	012702	000006		2$:	MOV	#6,R2
  6932		117166			$P23X=.
  6933	117166	012703	000003		1$:	MOV	#3,R3
  6934					
  6935	117172	104146				PROL36			;ROTATE 3
  6936	117174	004737	117224			JSR	PC,$PRT36	;PRINT OCTAL
  6937					
  6938	117200	005302				DEC	R2		;FINISHED HALF WORD YET ?
  6939	117202	001371				BNE	1$
  6940					
  6941	117204	005737	147754			TST	$0FLG
  6942	117210	001401				BEQ	3$
  6943	117212	104032				PSPACE
  6944					
  6945	117214	005304			3$:	DEC	R4		;FINISHED FULL WORD YET ?
  6946	117216	100361				BPL	2$
  6947					
  6948					$$PEX:	EXIT
  6949	117220	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 196
		SUB11 PAL[KL,SYS]	Page 13 	PRINT 36 BIT NUMBER

  6950	117224	016100	000004		$PRT36:	MOV	4(R1),R0	;GET THE WORD
  6951	117230	000300				SWAB	R0
  6952	117232	005705				TST	R5
  6953	117234	001002				BNE	1$
  6954	117236	104030				PNTNBR			;PRINT OCTAL
  6955	117240	000207				RTS	PC
  6956					
  6957					1$:	PUSH	R4
  6958	117244	010004				MOV	R0,R4
  6959	117246	012703	177776			MOV	#177776,R3
  6960						SR	R0,2
  6961	117256	040300				BIC	R3,R0
  6962	117260	104030				PNTNBR			;PRINT HI-BIT OF OCTAL
  6963	117262	010400				MOV	R4,R0
  6964						SR	R0,1
  6965	117266	040300				BIC	R3,R0
  6966	117270	104030				PNTNBR			;PRINT MIDDLE-BIT OF OCTAL
  6967	117272	010400				MOV	R4,R0
  6968	117274	040300				BIC	R3,R0
  6969	117276	104030				PNTNBR			;PRINT LO-BIT OF OCTAL
  6970	117300	104032				PSPACE
  6971						POP	R4
  6972	117304	000207				RTS	PC
  6973					
  6974	117306	012703	000006		$P36MV:	MOV	#6,R3		;MOVE 6 BYTES
  6975	117312	012702	150004			MOV	#$TTSAV,R2	;TO SETUP DATA
  6976	117316	010201				MOV	R2,R1
  6977	117320	112022			1$:	MOVB	(R0)+,(R2)+
  6978	117322	005303				DEC	R3
  6979	117324	001375				BNE	1$
  6980	117326	005005			$PODMV:	CLR	R5
  6981	117330	005004				CLR	R4
  6982	117332	012703	000004			MOV	#4,R3
  6983	117336	010337	147754			MOV	R3,$0FLG	;SET SPACE FLAG
  6984	117342	104146				PROL36			;PRESET NUMBER
  6985	117344	000207				RTS	PC
  6986					
  6987	117346	006111			$PROL36:ROL	(R1)
  6988	117350	006161	000002			ROL	2(R1)
  6989	117354	006161	000004			ROL	4(R1)
  6990	117360	005303				DEC	R3
  6991	117362	001371				BNE	$PROL36
  6992	117364	000715				BR	$$PEX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 197
		SUB11 PAL[KL,SYS]	Page 14 	PRINT OCTAL

  6993					.SBTTL	PRINT OCTAL
  6994					
  6995	117366	012704	777777		$PNTOCT:MOV	#-1,R4		;PRINT OCTAL
  6996	117372	000401				BR	$PNTO
  6997					
  6998					.SBTTL	PRINT OCTAL ZERO SUPRRESS
  6999					
  7000	117374	005004			$PNTOSC:CLR	R4		;PRINT OCTAL ZERO SUPPRESS
  7001	117376	012701	000006		$PNTO:	MOV	#6,R1		;SET FOR 6 DIGITS
  7002	117402	010002				MOV	R0,R2		;SAVE INPUT NUMBERS
  7003	117404	005005				CLR	R5		;CLEAR THE ZERO FILL FLAG
  7004	117406	005704				TST	R4		;ZERO SUPPRESS ?
  7005	117410	001004				BNE	10$		;NO
  7006	117412	005700				TST	R0		;TEST FOR A ZERO INPUT NUMBER
  7007	117414	001003				BNE	1$
  7008	117416	005001				CLR	R1		;INPUT = 0 PRINT AND EXIT
  7009	117420	000417				BR	5$
  7010					
  7011	117422	005205			10$:	INC	R5
  7012	117424	005000			1$:	CLR	R0
  7013	117426	006102				ROL	R2		;MSD TO C BIT
  7014	117430	000404				BR	3$
  7015					
  7016	117432	006102			2$:	ROL	R2
  7017	117434	006102				ROL	R2
  7018	117436	006102				ROL	R2
  7019	117440	010200				MOV	R2,R0
  7020	117442	006100			3$:	ROL	R0
  7021					
  7022	117444	042700	177770			BIC	#177770,R0	;GET RID OF JUNK
  7023	117450	001401				BEQ	4$
  7024	117452	005205				INC	R5		;SET ZERO FILL FLAG
  7025					
  7026	117454	005705			4$:	TST	R5		;SUPPRESS ?
  7027	117456	001401				BEQ	6$
  7028	117460	104030			5$:	PNTNBR			;PRINT DIGIT
  7029	117462	005301			6$:	DEC	R1
  7030	117464	003362				BGT	2$
  7031					
  7032	117466	005704				TST	R4
  7033	117470	001401				BEQ	7$
  7034	117472	104032				PSPACE			;SPACE UNLESS OCTAL SUPPRESS
  7035	117474	000450			7$:	BR	$$PEX1
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 198
		SUB11 PAL[KL,SYS]	Page 15 	CONVERT BINARY TO DECIMAL AND TYPE ROUTINE

  7036					.SBTTL	CONVERT BINARY TO DECIMAL AND TYPE ROUTINE
  7037					
  7038	117476	012701	000005		$PNTDEC:MOV	#5,R1		;SET FOR 5 DIGIT
  7039	117502	010002				MOV	R0,R2		;SAVE INPUT NUMBER
  7040	117504	005005				CLR	R5		;CLEAR ZERO FILL FLAG
  7041	117506	005700				TST	R0		;TEST SIGN OF INPUT NUMBER
  7042	117510	100007				BPL	1$		;POSITIVE GO TYPE IT
  7043	117512	112700	000055			MOVB	#'-,R0		;PRINT A MINUS SIGN
  7044	117516	104027				PNTCHR			;SEND TO BUFFER
  7045	117520	005402				NEG	R2		;NEGATE THE NUMBER
  7046	117522	010200				MOV	R2,R0		;GET NUMBER AGAIN
  7047	117524	042700	100000			BIC	#100000,R0	;CLEAR SIGN BIT
  7048	117530	005700			1$:	TST	R0		;TEST FOR A ZERO INPUT NUMBER
  7049	117532	001002				BNE	2$		;NON ZERO
  7050	117534	104030				PNTNBR			;PRINT A SINGLE ZERO AND EXIT
  7051	117536	000425				BR	9$		;EXIT
  7052	117540	005003			2$:	CLR	R3		;ZERO THE CONSTANTS INDEX
  7053	117542	005000			3$:	CLR	R0		;CLEAR THE BCD NUMBER
  7054	117544	166302	144672		4$:	SUB	$DTBL(R3),R2	;FORM THIS BCD DIGIT
  7055	117550	002402				BLT	5$		;BR IF DONE
  7056	117552	005200				INC	R0		;INCREASE THE BCD DIGIT BY 1
  7057	117554	000773				BR	4$
  7058	117556	066302	144672		5$:	ADD	$DTBL(R3),R2	;ADD BACK THE CONSTANT
  7059	117562	005700				TST	R0		;TEST IF DIGIT IS A ZERO
  7060	117564	001402				BEQ	6$		;YES
  7061	117566	005205				INC	R5		;NO SET ZERO FILL FLAG
  7062	117570	000402				BR	7$
  7063					
  7064	117572	005705			6$:	TST	R5		;IS ZERO FILL FLAG SET
  7065	117574	001403				BEQ	8$		;YES EXIT
  7066	117576	052700	000060		7$:	BIS	#'0,R0		;MAKE THE BCD DIGIT ASCII
  7067	117602	104027				PNTCHR
  7068	117604	005723			8$:	TST	(R3)+		;JUST INCREMENTING
  7069	117606	005301				DEC	R1		;DONE YET
  7070	117610	003354				BGT	3$		;GO DO THE NEXT DIGIT
  7071	117612	104214			9$:	PNTCI
  7072	117614	000056				'.			;PRINT DECIMAL POINT
  7073					$$PEX1:	EXIT			;RETURN TO USER
  7074	117616	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 199
		SUB11 PAL[KL,SYS]	Page 16 	TTY INPUT ROUTINE TTICHR

  7075					.SBTTL	TTY INPUT ROUTINE TTICHR
  7076					
  7077	117622	005000			$TTICHR:CLR	R0
  7078	117624	023737	150716	150720		CMP	$INPTC,$INPTR	;ARE WE AT END ON CURRENT BUFFER
  7079	117632	003007				BGT	$TTIX2		;YES EXIT
  7080	117634	117700	031056			MOVB	@$INPTC,R0	;FETCH CHARACTER FROM BUFFER
  7081	117640	005237	150716			INC	$INPTC
  7082					
  7083	117644	042700	177600		$TTIX1:	BIC	#177600,R0
  7084	117650	000431				BR	$$PSX2		;OK RETURN
  7085	117652	000426			$TTIX2:	BR	$$PEX2		;ERROR RETURN
  7086					
  7087					.SBTTL	TTY LOOK
  7088					
  7089					;*TELETYPE KEYBOARD CHECK ROUTINE
  7090					;*CHECKS FOR ANY KEY STRUCK,RETURNS IMMEDIATELY
  7091					;*RETURNS WITH C-BIT SET IF NO TYPEIN
  7092					
  7093	117654	005237	147764		$TTLOOK:INC	$TTLKF		;SET INHIBIT INPUT CHECKS
  7094	117660	005000				CLR	R0
  7095	117662	004737	120670			JSR	PC,$TIRDY	;ANYTHING BEEN TYPED
  7096	117666	103771				BCS	$TTIX2		;NO, C-BIT RETURN
  7097	117670	113700	147744			MOVB	$TICHR,R0	;YES, PUT IT IN R0
  7098	117674	005037	147764			CLR	$TTLKF		;CLEAR INHIBIT INPUT CHECKS
  7099	117700	000761				BR	$TTIX1		;RETURN
  7100					
  7101					.SBTTL	TTY ALT-MODE CHECK ROUTINE
  7102					
  7103					;*CHECK FOR ALT-MODE IF NOTHING TYPED OR NOT ALTMODE C-BIT SET
  7104					;*IF ALT-MODE WAS TYPED THEN C-BIT CLEAR
  7105					
  7106	117702	104006			$TTALTM:TTLOOK			;ANYTHING TYPED
  7107	117704	103411				 BCS	2$		;NO
  7108					
  7109	117706	120027	000175			CMPB	R0,#175
  7110	117712	001412				BEQ	3$
  7111	117714	120027	000176			CMPB	R0,#176
  7112	117720	001407				BEQ	3$
  7113	117722	120027	000033			CMPB	R0,#ALTMOD
  7114	117726	001402				BEQ	1$
  7115					
  7116		117730			$$PEX2=.
  7117					2$:	EXITERR			;EXIT
  7118	117730	000137	124036			  JMP	$EXITE
  7119		117734			$$PSX2=.
  7120					1$:	EXIT			;OK RETURN
  7121	117734	000137	124064			  JMP	$EXIT
  7122					
  7123	117740	112700	000033		3$:	MOVB	#ALTMOD,R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 200
		SUB11 PAL[KL,SYS]	Page 16.1 	TTY ALT-MODE CHECK ROUTINE

  7124	117744	000773				BR	1$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 201
		SUB11 PAL[KL,SYS]	Page 17 	TTIYES YES OR NO ROUTINE

  7125					.SBTTL	TTIYES YES OR NO ROUTINE
  7126					
  7127					; NO BITS SET IF YES
  7128					; N-BIT SET IF NO
  7129					; C-BIT SET IF NEITHER
  7130					
  7131	117746	104005			$TTIYES:TTICHR			;GET INPUT CHARACTER
  7132	117750	103767				 BCS	$$PEX2		;NO CHAR AVAILABLE
  7133	117752	122700	000131			CMPB	#'Y,R0		;WAS THE CHAR A "Y" ?
  7134	117756	001766				BEQ	$$PSX2		;BR IF YES
  7135	117760	122700	000116			CMPB	#'N,R0		;WAS THE CHAR AN "N" ?
  7136	117764	001361				BNE	$$PEX2		;BR IF NO, NEITHER
  7137	117766	052766	000010	000014		BIS	#NBIT,14(SP)	;"NO", SET N-BIT
  7138	117774	000757				BR	$$PSX2
  7139					
  7140					.SBTTL	PRINT A SELECTED NUMBER OF SPACES
  7141					
  7142	117776	005301			$PNTSPC:DEC	R1
  7143	120000	002402				BLT	1$
  7144					
  7145	120002	104032				PSPACE			;PRINT SPACE
  7146	120004	000774				BR	$PNTSPC
  7147					
  7148	120006	000207			1$:	RTS	PC
  7149					
  7150					.SBTTL	BACKUP TTY INPUT BUFFER POINTER
  7151					
  7152	120010	023727	150716	150500	$TTBACK:CMP	$INPTC,#$INBUF
  7153	120016	003744				BLE	$$PEX2		;CAN'T, C-BIT SET RETURN
  7154	120020	005337	150716			DEC	$INPTC		;BACKUP POINTER
  7155	120024	000743				BR	$$PSX2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 202
		SUB11 PAL[KL,SYS]	Page 18 	READ SWITCH REGISTER

  7156					.SBTTL	READ SWITCH REGISTER
  7157					
  7158	120026	013700	177570		$SWITCH:MOV	SWR,R0		;PUT SWR INTO R0
  7159					
  7160	120032	010037	147632		1$:	MOV	R0,$SWTCH	;SAVE A COPY FOR FUTURE REFERENCE
  7161	120036	000410				BR	$$PEX3		;RETURN TO USER
  7162					
  7163					.SBTTL	RETURN WITH COPY OF SWITCHES 
  7164					
  7165	120040	013700	147632		$SWTSAM:MOV	$SWTCH,R0	;COPY OF SWITCHES TO RO
  7166	120044	000405				BR	$$PEX3
  7167					
  7168					.SBTTL	SET FORCE PRINT FLAG
  7169					
  7170	120046	104055			$PFORCE:SETFLG
  7171	120050	147760				  $FORCE		;177777 TO FORCE FLAG
  7172	120052	000402				BR	$$PEX3		;RETURN
  7173					
  7174					
  7175					.SBTTL	CLEAR FORCE PRINT FLAG
  7176					
  7177	120054	005037	147760		$PNORML:CLR	$FORCE		;0 TO FORCE FLAG
  7178					$$PEX3:	EXIT			;RETURN
  7179	120060	000137	124064			  JMP	$EXIT
  7180					
  7181					;TTILIN ENTRY POINT FROM RUNLP
  7182					
  7183	120064	005037	147762		$TILRN:	CLR	TILNWF		;CLEAR TTY WAIT FLAG
  7184	120070	004737	120106			JSR	PC,$TILN3	;INIT TTILIN ROUTINE
  7185						PUSH	$FORCE
  7186	120100	012701	150500			MOV	#$INBUF,R1
  7187	120104	000446				BR	$TILN2		;GO INPUT, 1ST CHAR ALREADY AVAILABLE
  7188					
  7189	120106	005037	147770		$TILN3:	CLR	CTRLOF		;CLEAR CONTROL O FLAG
  7190	120112	022737	150254	150474		CMP	#$OUTBF,$OUTPT	;ANY OUTPUT WAITING ?
  7191	120120	001401				BEQ	1$		;NO
  7192	120122	104151				PRINTT			;YES, PRINT IT
  7193	120124	005037	147774		1$:	CLR	$TPLIT		;CLEAR LINES ON PAGE
  7194	120130	005037	147754			CLR	$0FLG		;CLEAR RUBOUT FLAG
  7195	120134	005037	147662			CLR	$TTYTIM		;CLEAR TTY TIMEOUT
  7196	120140	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 203
		SUB11 PAL[KL,SYS]	Page 19 	INPUT A STRING FROM TTY

  7197					.SBTTL	INPUT A STRING FROM TTY
  7198					
  7199	120142	104055			$TTILNW:SETFLG			;SET TTY WAIT FLAG
  7200	120144	147762				  TILNWF
  7201	120146	000402				BR	$TILNX
  7202					
  7203	120150	005037	147762		$TTILIN:CLR	TILNWF		;CLEAR TTY WAIT FLAG
  7204					
  7205	120154	004737	120106		$TILNX:	JSR	PC,$TILN3	;INIT ROUTINE
  7206						PUSH	$FORCE
  7207	120164	104043				PFORCE
  7208	120166	012701	150500		95$:	MOV	#$INBUF,R1
  7209		120172			$TILN1=.
  7210	120172	004737	110742		2$:	JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
  7211	120176	005737	147762			TST	TILNWF		;WAIT FOREVER ?
  7212	120202	001004				BNE	21$		;YES, NO TIMEOUT
  7213	120204	023727	147662	025060		CMP	$TTYTIM,#<3*60.*60.>;TTY TIMED OUT ?
  7214	120212	003062				BGT	99$		;YES, C-BIT SET EXIT
  7215					
  7216	120214	004737	120670		21$:	JSR	PC,$TIRDY	;TTY IN FLAG SET
  7217	120220	103764				BCS	2$
  7218		120222			$TILN2=.
  7219	120222	005037	147662			CLR	$TTYTIM
  7220	120226	113711	147744			MOVB	$TICHR,(R1)	;MOVE CHARACTER TO BUFFER
  7221	120232	142711	000200			BICB	#200,(R1)
  7222	120236	111137	150024			MOVB	(R1),$TNCHR	;SAVE CHAR FOR TEN
  7223	120242	001753				BEQ	2$		;NULL, IGNORE
  7224	120244	104176				TENCHR			;SEND TEN THE CHAR
  7225					
  7226	120246	005005				CLR	R5		;DO SPECIAL CHAR PROCESS
  7227	120250	121165	120612		80$:	CMPB	(R1),TILINC(R5)
  7228	120254	001405				BEQ	81$		;FOUND
  7229	120256	005205				INC	R5
  7230	120260	105765	120612			TSTB	TILINC(R5)
  7231	120264	001404				BEQ	82$		;IF 0, END OF LIST
  7232	120266	000770				BR	80$
  7233					
  7234					81$:	SL	R5,1		;DISPATCH
  7235	120272	000175	120632			JMP	@TILINA(R5)
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 204
		SUB11 PAL[KL,SYS]	Page 20 	INPUT A STRING FROM TTY

  7236	120276	121127	000141		82$:	CMPB	(R1),#141
  7237	120302	002405				BLT	83$
  7238	120304	121127	000172			CMPB	(R1),#172
  7239	120310	003002				BGT	83$
  7240	120312	142711	000040			BICB	#40,(R1)	;CONVERT LOWER TO UPPER CASE
  7241					
  7242					83$:	PUSH	R1
  7243	120320	111101				MOVB	(R1),R1		;PUT CHAR IN R1
  7244	120322	104154				PLDBUF			;INSERT FOR LPT
  7245	120324	005237	150472			INC	$OUTPP		;MOVE PRINTED-TO-POSITION
  7246						POP	R1
  7247					
  7248	120332	005737	147754		10$:	TST	$0FLG		;RUBOUT KEY SET?
  7249	120336	001405				BEQ	11$		;BR IF NO
  7250					
  7251	120340	112700	000134			MOVB	#BKSLH,R0	;TYPE A BACK SLASH
  7252	120344	104152				PTTY
  7253	120346	005037	147754			CLR	$0FLG		;CLEAR RUBOUT FLAG
  7254					
  7255	120352	112100			11$:	MOVB	(R1)+,R0	;CHAR TO R0
  7256	120354	104152				PTTY			;PRINT IT
  7257	120356	000705				BR	2$		;BACK FOR MORE
  7258					
  7259	120360	010137	150720		99$:	MOV	R1,$INPTR	;SAVE INPUT POINTER
  7260						POP	$FORCE
  7261						EXITERR			;TIMED OUT, C-BIT SET RETURN
  7262	120370	000137	124036			  JMP	$EXITE
  7263					
  7264	120374	005737	147754		$TIRUB:	TST	$0FLG		;MULTIPLE RUBOUTS ?
  7265	120400	001005				BNE	1$		;YES
  7266	120402	005237	147754			INC	$0FLG		;SET RUBOUT FLAG
  7267	120406	112700	000134			MOVB	#BKSLH,R0	;TYPE A BACKSLASH
  7268	120412	104152				PTTY
  7269					
  7270	120414	005301			1$:	DEC	R1		;BACKUP BY ONE
  7271	120416	020127	150477			CMP	R1,#$INBUF-1	;INPUT BUFFER EMPTY ?
  7272	120422	001004				BNE	2$		;NO
  7273					
  7274	120424	104031				PCRLF			;EMPTY, PRINT CR/LF
  7275						POP	$FORCE
  7276	120432	000650				BR	$TILNX		;AWAIT NEW LINE
  7277					
  7278	120434	111100			2$:	MOVB	(R1),R0		;PRINT RUBBED OUT CHAR
  7279	120436	104152				PTTY
  7280	120440	000654				BR	$TILN1
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 205
		SUB11 PAL[KL,SYS]	Page 21 	INPUT A STRING FROM TTY

  7281					;SPECIAL CHAR PROCESS
  7282					
  7283					$TICU:	PMSG	<↑U\>		;CONTROL U, DUMP LINE
  7284	120442	104025				  $PMSG
  7285	120444	146053				  $$CLIT
  7286						POP	$FORCE
  7287	120452	000640				BR	$TILNX
  7288					
  7289	120454	005201			$TICR:	INC	R1		;CARRIAGE RETURN
  7290	120456	112711	000012			MOVB	#LF,(R1)	;INSERT LF ALSO
  7291					
  7292	120462	104031			$TIBELL:PCRLF			;PRINT CR/LF
  7293					
  7294	120464	010137	150720		$TIEXT:	MOV	R1,$INPTR	;UPDATE INPUT POINTER
  7295	120470	012737	150500	150716		MOV	#$INBUF,$INPTC	;INIT CHAR POINTER
  7296						POP	$FORCE
  7297						EXIT			;RETURN
  7298	120502	000137	124064			  JMP	$EXIT
  7299					
  7300	120506	112711	000033		$TIALT:	MOVB	#ALTMOD,(R1)	;ALTMODE
  7301						PMSG	<$\>		;PRINT DOLLAR SIGN CR/LF
  7302	120512	104025				  $PMSG
  7303	120514	146057				  $$CLIT
  7304	120516	000762				BR	$TIEXT
  7305					
  7306	120520	104031			$TIBKS:	PCRLF			;BACKSLASH, DO LOCAL CR/LF
  7307	120522	000623				BR	$TILN1
  7308					
  7309					
  7310	120524	104214			$TICC:	PNTCI			;CONTROL C, ABORT
  7311	120526	041536				"↑C
  7312	120530	000137	100004			JMP	$CNTLC
  7313					
  7314	120534	005737	157304		$TICL:	TST	LPTFLG		;CONTROL L, LPT SELECTION
  7315	120540	100214				BPL	$TILN1
  7316	120542	105137	157304			COMB	LPTFLG
  7317	120546	000611				BR	$TILN1
  7318					
  7319	120550	111100			$TILF:	MOVB	(R1),R0		;LINE FEED
  7320	120552	104152				PTTY
  7321	120554	000743				BR	$TIEXT
  7322					
  7323	120556	005037	147770		$TICO:	CLR	CTRLOF		;CLEAR CONTROL O FLAG
  7324	120562	104214				PNTCI
  7325	120564	047536				"↑O
  7326	120566	000735				BR	$TIBELL		;CR/LF & TERMINATE
  7327					
  7328	120570	104217			$TICX:	TTPINI
  7329	120572	104214				PNTCI
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 206
		SUB11 PAL[KL,SYS]	Page 21.1 	INPUT A STRING FROM TTY

  7330	120574	054136				"↑X
  7331	120576	104004				TTILIN			;GET COMMAND LINE
  7332	120600	103751				 BCS	$TICC		;TIMED OUT
  7333	120602	013706	147736			MOV	$KONSP,SP	;RESTORE STACK POINTER
  7334	120606	000137	100456			JMP	$RPT		;GO PROCESS COMMAND
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 207
		SUB11 PAL[KL,SYS]	Page 22 	INPUT A STRING FROM TTY

  7335					;SPECIAL CHARACTERS
  7336					
  7337	120612	   015		
  7338	120613	   012			TILINC:	.BYTE	CR,LF
  7339	120614	   007		
  7340	120615	   033				.BYTE	BELL,ALTMOD
  7341	120616	   175		
  7342	120617	   176				.BYTE	175,176
  7343	120620	   014		
  7344	120621	   025				.BYTE	CNTRLL,CNTRLU
  7345	120622	   003		
  7346	120623	   134				.BYTE	CNTRLC,BKSLH
  7347	120624	   177		
  7348	120625	   017				.BYTE	RUBOUT,CNTRLO
  7349	120626	   021		
  7350	120627	   023				.BYTE	XON,XOFF
  7351	120630	   030		
  7352	120631	   000				.BYTE	CNTRLX,0
  7353					
  7354					;SPECIAL CHAR DISPATCH TABLE
  7355					
  7356	120632	120454			TILINA:	$TICR
  7357	120634	120550				$TILF
  7358	120636	120462				$TIBELL
  7359	120640	120506				$TIALT
  7360	120642	120506				$TIALT
  7361	120644	120506				$TIALT
  7362	120646	120534				$TICL
  7363	120650	120442				$TICU
  7364	120652	120524				$TICC
  7365	120654	120520				$TIBKS
  7366	120656	120374				$TIRUB
  7367	120660	120556				$TICO
  7368	120662	120462				$TIBELL
  7369	120664	120462				$TIBELL
  7370	120666	120570				$TICX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 208
		SUB11 PAL[KL,SYS]	Page 23 	CTY & FSTTY DL11 DRIVERS

  7371					.SBTTL	CTY & FSTTY DL11 DRIVERS
  7372					
  7373	120670	105777	757124		$TIRDY:	TSTB	@$TKS		;ANY CTY INPUT ?
  7374	120674	100020				BPL	2$		;NO
  7375	120676	032777	020000	757116		BIT	#20000,@$TKB	;YES. BREAK?
  7376	120704	001010				BNE	5$		;BRANCH IF YES
  7377	120706	117737	757110	147744		MOVB	@$TKB,$TICHR	;GET CHAR
  7378	120714	142737	000200	147744	1$:	BICB	#200,$TICHR	;CLEAR PARITY BIT
  7379	120722	000241				CLC			;C-BIT CLEAR RETURN
  7380	120724	000207				RTS	PC
  7381					
  7382	120726	112737	000030	147744	5$:	MOVB	#MSWCHR,$TICHR	;BREAK SEEN. 
  7383	120734	000767				BR	1$
  7384					
  7385					2$:
  7386					.IF NDF TELASB
  7387						TST	DL11EFLG	;DOING DL11E ?
  7388						BEQ	3$		;NO
  7389						BIT	#DLCTS,@$FSTKS	;YES, STILL HAVE CLEAR TO SEND ?
  7390						BEQ	4$		;NO
  7391					.IFF
  7392	120736	005737	152236			TST FSFLG		;DOING DL11E?
  7393	120742	001413				BEQ 3$			;NO
  7394	120744	032777	020000	757056		BIT #DLCTS,@$FSTKS	;STILL HAVE CLEAR TO SEND?
  7395	120752	001407				BEQ 3$			;NO
  7396					.ENDC
  7397	120754	105777	757050			TSTB	@$FSTKS		;ANY FSTTY INPUT ?
  7398	120760	100004				BPL	3$		;NO
  7399	120762	117737	757044	147744		MOVB	@$FSTKB,$TICHR	;YES, GET CHAR
  7400	120770	000751				BR	1$		;C-BIT CLEAR RETURN
  7401					
  7402	120772	000261			3$:	SEC			;NO INPUT, C-BIT SET RETURN
  7403	120774	000207				RTS	PC
  7404					
  7405					.LIF NDF TELASB
  7406					4$:	JMP	FSDISC		;DL11E DISCONNECT
  7407					
  7408	120776	105777	757022		$TORDY:	TSTB	@$TPS		;IS CTY READY ?
  7409	121002	100014				BPL	2$		;NO
  7410					.IF NDF TELASB
  7411						TST	DL11EFLG	;DOING DL11E ?
  7412						BEQ	1$		;NO
  7413						BIT	#DLCTS,@$FSTKS	;STILL HAVE CLEAR TO SEND ?
  7414						BEQ	3$		;NO
  7415					.IFF
  7416	121004	005737	152236			TST FSFLG
  7417	121010	001407				BEQ 1$
  7418	121012	032777	020000	757010		BIT #DLCTS,@$FSTKS	;STILL HAVE CLEAR TO SEND?
  7419	121020	001403				BEQ 1$			;NO
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 209
		SUB11 PAL[KL,SYS]	Page 23.1 	CTY & FSTTY DL11 DRIVERS

  7420					.ENDC
  7421	121022	105777	757006			TSTB	@$FSTPS		;IS FSTTY READY ?
  7422	121026	100002				BPL	2$		;NO
  7423					
  7424	121030	000241			1$:	CLC			;ALL READY, C-BIT CLEAR RETURN
  7425	121032	000207				RTS	PC
  7426					
  7427	121034	000261			2$:	SEC			;NOT READY
  7428	121036	000207				RTS	PC
  7429					
  7430					.LIF NDF TELASB
  7431					3$:	JMP	FSDISC		;DL11E DISCONNECT
  7432					
  7433	121040	113777	147742	756760	$TOOUT:	MOVB	$TOCHR,@$TPB	;PRINT ON CTY
  7434					
  7435					.IF NDF TELASB
  7436						TST	DL11EFLG
  7437						BEQ	1$
  7438					.IFF
  7439	121046	005737	152236			TST FSFLG
  7440	121052	001407				BEQ 1$
  7441	121054	032777	020000	756746		BIT #DLCTS,@$FSTKS	;STILL HAVE CLEAR TO SEND
  7442	121062	001403				BEQ 1$
  7443					.ENDC
  7444	121064	113777	147742	756744		MOVB	$TOCHR,@$FSTPB	;PRINT ON FSTTY
  7445	121072	000207			1$:	RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 210
		SUB11 PAL[KL,SYS]	Page 24 	READ AN OCTAL NUMBER FROM THE TTY

  7446					.SBTTL	READ AN OCTAL NUMBER FROM THE TTY
  7447					
  7448					;REGISTER USAGE
  7449					;R0 = TTY CHARACTER 7 BIT FROM $INBUF
  7450					;R2 = WORK REGISTER
  7451					;R3 = CLEARED/SET = NO OCTAL CHARS/AT LEAST 1 OCTAL CHAR
  7452					
  7453	121074	005002			$TTIOCT:CLR	R2		;CLEAR WORK REGISTER
  7454	121076	004737	121170			JSR	PC,$TMINUS	;CHECK FOR PLUS & MINUS
  7455	121102	104005			1$:	TTICHR			;PICKUP THIS CHARACTER
  7456	121104	103416				 BCS	2$
  7457					
  7458	121106	120027	000060			CMPB	R0,#60		;MAKE SURE THIS CHARACTER
  7459	121112	002413				BLT	2$		;IS AN OCTAL DIGIT
  7460	121114	120027	000067			CMPB	R0,#67
  7461	121120	003010				BGT	2$
  7462					
  7463	121122	005203				INC	R3		;TO SHOW I GOT ONE CHARACTER
  7464					
  7465	121124	006302				ASL	R2
  7466	121126	006302				ASL	R2
  7467	121130	006302				ASL	R2
  7468					
  7469	121132	042700	177770			BIC	#177770,R0
  7470	121136	060002				ADD	R0,R2
  7471	121140	000760				BR	1$
  7472					
  7473	121142	005000			2$:	CLR	R0		;SET UP FOR EXIT
  7474					
  7475	121144	005703				TST	R3		;DID WE GET ANY DATA
  7476	121146	001406				BEQ	$$PEX7		;NO, ERROR RETURN
  7477					
  7478	121150	010200				MOV	R2,R0
  7479	121152	005704				TST	R4		;NEGATE FLAG SET ?
  7480	121154	001401				BEQ	$$PEX6		;NO
  7481	121156	005400				NEG	R0		;YES, MAKE NUMBER NEGATIVE
  7482	121160	000137	122340		$$PEX6:	JMP	$TTERM		;VERIFY TERMINATION & EXIT
  7483					$$PEX7:	EXITERR			;ERROR RETURN
  7484	121164	000137	124036			  JMP	$EXITE
  7485					
  7486	121170	005003			$TMINUS:CLR	R3		;CLEAR CHAR COUNTER
  7487	121172	005004				CLR	R4		;CLEAR NEGATE FLAG
  7488	121174	013705	150716			MOV	$INPTC,R5	;SAVE INPUT POINTER
  7489	121200	104005				TTICHR			;GET 1ST CHAR
  7490	121202	103412				 BCS	82$		;NONE AVAILABLE
  7491	121204	122700	000053			CMPB	#'+,R0
  7492	121210	001404				BEQ	80$
  7493	121212	122700	000055			CMPB	#'-,R0		;NEGATE ?
  7494	121216	001002				BNE	81$		;BR IF NO
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 211
		SUB11 PAL[KL,SYS]	Page 24.1 	READ AN OCTAL NUMBER FROM THE TTY

  7495	121220	005204				INC	R4		;YES, SET NEGATE FLAG
  7496	121222	005205			80$:	INC	R5		;YES, ADVANCE PAST -
  7497	121224	010537	150716		81$:	MOV	R5,$INPTC
  7498	121230	000207			82$:	RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 212
		SUB11 PAL[KL,SYS]	Page 25 	READ A DECIMAL NUMBER FROM THE TTY

  7499					.SBTTL	READ A DECIMAL NUMBER FROM THE TTY
  7500					
  7501	121232	012702	150004		$TTIDEC:MOV	#$TTSAV,R2	;RESERVE STORAGE
  7502	121236	004737	121170			JSR	PC,$TMINUS	;CHECK FOR PLUS & MINUS
  7503	121242	104005			1$:	TTICHR			;READ IN A CHARACTER
  7504	121244	103413				 BCS	2$
  7505	121246	120027	000060			CMPB	R0,#60		;MAKE SURE THIS CHARACTER
  7506	121252	002410				BLT	2$		;IS A DIGIT BETWEEN 0 & 9
  7507	121254	120027	000071			CMPB	R0,#71
  7508	121260	003005				BGT	2$
  7509	121262	005203				INC	R3		;SO I KNOW I GOT A DIGIT
  7510	121264	042700	177760			BIC	#177760,R0	;DON'T LET NUMBER GET TO BIG
  7511	121270	110022				MOVB	R0,(R2)+
  7512	121272	000763				BR	1$
  7513	121274	005000			2$:	CLR	R0		;CLEAR OUTPUT
  7514	121276	005703				TST	R3		;DID WE GET ANY THING
  7515	121300	001420				BEQ	6$		;NO
  7516					
  7517					;NOW WE CONVERT IT
  7518					
  7519	121302	005001				CLR	R1		;CLEAR TABLE INDEX
  7520	121304	020227	150004		3$:	CMP	R2,#$TTSAV
  7521	121310	002410				BLT	5$		;YES NORMAL EXIT
  7522	121312	114205				MOVB	-(R2),R5	;PUT IN R5
  7523	121314	005305			4$:	DEC	R5		;DONE YET
  7524	121316	002403				BLT	7$
  7525	121320	066100	144704			ADD	$TBLL(R1),R0	;TALLY IT UP
  7526	121324	000773				BR	4$
  7527	121326	005721			7$:	TST	(R1)+		;UPDATE TABLE TALLY
  7528	121330	000765				BR	3$
  7529	121332	005704			5$:	TST	R4		;NEGATE NUMBER ?
  7530	121334	001401				BEQ	9$
  7531	121336	005400				NEG	R0		;YES
  7532	121340	000707			9$:	BR	$$PEX6		;RETURN
  7533	121342	000710			6$:	BR	$$PEX7		;ERROR RETURN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 213
		SUB11 PAL[KL,SYS]	Page 26 	READ A 12 DIGIT OCTAL (36 BIT) NUMBER

  7534					.SBTTL	READ A 12 DIGIT OCTAL (36 BIT) NUMBER
  7535					
  7536					;$0FLG, 0=NO DATA; 0,-1=ONE DATA WORD; -1,-1= TWO PART DATA
  7537					;DATA IS TRUNCATED TO 6 OCTALS IN EITHER HALF OF 2 PART DATA
  7538					;DATA IS TRUNCATED TO 12 OCTALS IN 1 PART DATA
  7539					;DURING CONVERSION
  7540					;1 PART DATA; $0FLG =0
  7541					;2 PART DATA; $0FLG=-1,0 DURING HI6; 0,-1 DURING LO6
  7542					
  7543	121344	004737	122044		$TTI36:	JSR	PC,$TI36C
  7544	121350	005037	147750			CLR	$SVH
  7545	121354	005037	147746			CLR	$SVM
  7546	121360	005037	147754			CLR	$0FLG
  7547	121364	005037	147752			CLR	$NEG
  7548	121370	004737	121170			JSR	PC,$TMINUS
  7549	121374	005704				TST	R4
  7550	121376	001402				BEQ	1$
  7551	121400	105237	147753			INCB	$NEG+1		;SET NEGATE FLAG
  7552					
  7553	121404	104005			1$:	TTICHR			;READ A CHAR
  7554	121406	103424			99$:	 BCS	98$		;BUFFER EMPTY
  7555					
  7556	121410	120027	000060			CMPB	R0,#60		;MAKE SURE ITS OCTAL
  7557	121414	002407				BLT	2$
  7558	121416	120027	000067			CMPB	R0,#67
  7559	121422	003004				BGT	2$
  7560					
  7561	121424	112737	777777	147754		MOVB	#-1,$0FLG	;WE GOT AT LEAST 1 DIGIT
  7562	121432	000764				BR	1$
  7563					
  7564	121434	105737	147754		2$:	TSTB	$0FLG
  7565	121440	001546				BEQ	69$
  7566	121442	120027	000040			CMPB	R0,#BLANK	;WAS IT A SPACE ?
  7567	121446	001021				BNE	3$		;NOPE
  7568	121450	112737	777777	147755		MOVB	#-1,$0FLG+1	;SET 2 WORD FLAG
  7569	121456	104005				TTICHR			;GET 1ST CHAR OF 2ND PART
  7570	121460	103421			98$:	 BCS	97$
  7571	121462	122700	000053			CMPB	#'+,R0
  7572	121466	001410				BEQ	71$
  7573	121470	122700	000055			CMPB	#'-,R0		;IS IT MINUS ?
  7574	121474	001403				BEQ	21$		;YES
  7575	121476	005337	150716			DEC	$INPTC		;NO, BACKUP INPUT POINTER
  7576	121502	000740				BR	1$
  7577	121504	105237	147752		21$:	INCB	$NEG		;SET 2ND PART NEGATE FLAG
  7578	121510	000735			71$:	BR	1$		;PROCESS 2ND HALF WORD
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 214
		SUB11 PAL[KL,SYS]	Page 27 	READ A 12 DIGIT OCTAL (36 BIT) NUMBER

  7579	121512	010537	150716		3$:	MOV	R5,$INPTC	;RESET INPUT POINTER
  7580	121516	105037	147754			CLRB	$0FLG
  7581					
  7582	121522	104005			4$:	TTICHR
  7583	121524	103444			97$:	 BCS	96$
  7584	121526	120027	000060			CMPB	R0,#60
  7585	121532	002414				BLT	5$
  7586	121534	120027	000067			CMPB	R0,#67
  7587	121540	003011				BGT	5$
  7588					
  7589	121542	142700	000370			BICB	#370,R0
  7590	121546	012701	000003			MOV	#3,R1
  7591					
  7592	121552	004737	121766		6$:	JSR	PC,SHFT36	;SHIFT 36 BIT WORD LEFT 3
  7593					
  7594	121556	150037	147462			BISB	R0,$DRAM	;INSERT NEW CHAR
  7595	121562	000757				BR	4$
  7596					
  7597	121564	105737	147755		5$:	TSTB	$0FLG+1		;DOING 2 PART NUMBER ?
  7598	121570	001434				BEQ	8$		;BR IF NO
  7599					
  7600	121572	105737	147753		51$:	TSTB	$NEG+1		;NEGATE UPPER PART ?
  7601	121576	001402				BEQ	52$		;NO
  7602					
  7603	121600	004737	122010			JSR	PC,NEG36	;NEGATE 36 BIT WORD
  7604					
  7605	121604	012701	000022		52$:	MOV	#18.,R1		;YES, MOVE NUMBER TO UPPER 18 BITS
  7606					
  7607	121610	004737	121766		7$:	JSR	PC,SHFT36	;SHIFT 36 BIT WORD LEFT 18
  7608					
  7609	121614	014537	147750			MOV	-(R5),$SVH	;SAVE UPPER BITS
  7610	121620	014537	147746			MOV	-(R5),$SVM	;SAVE MIDDLE BITS
  7611	121624	004737	122044			JSR	PC,$TI36C
  7612					
  7613	121630	000337	147754			SWAB	$0FLG		;MAKE $0FLG 0,-1
  7614	121634	104005				TTICHR			;GET 1ST CHAR OF 2ND PART
  7615	121636	103450			96$:	 BCS	9$
  7616	121640	122700	000053			CMPB	#'+,R0
  7617	121644	001726				BEQ	4$
  7618	121646	122700	000055			CMPB	#'-,R0		;IS IT MINUS ?
  7619	121652	001723				BEQ	4$		;YES
  7620	121654	005337	150716			DEC	$INPTC		;NO, BACKUP INPUT POINTER
  7621	121660	000720				BR	4$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 215
		SUB11 PAL[KL,SYS]	Page 28 	READ A 12 DIGIT OCTAL (36 BIT) NUMBER

  7622	121662	105737	147754		8$:	TSTB	$0FLG
  7623	121666	001417				BEQ	10$		;BR IF 1 PART
  7624	121670	105737	147752			TSTB	$NEG		;NEGATE LOWER PART ?
  7625	121674	001402				BEQ	81$		;NO
  7626					
  7627	121676	004737	122010			JSR	PC,NEG36	;NEGATE 36 BIT WORD
  7628					
  7629	121702	012701	147464		81$:	MOV	#$DRAM+2,R1
  7630	121706	042711	177774			BIC	#177774,(R1)
  7631	121712	053721	147746			BIS	$SVM,(R1)+
  7632	121716	005011				CLR	(R1)		;CLEAR BITS 0-17
  7633	121720	053711	147750			BIS	$SVH,(R1)	;REINSERT UPPER BITS
  7634	121724	000405				BR	12$
  7635					
  7636	121726	105737	147753		10$:	TSTB	$NEG+1		;MAKE NUMBER NEGATIVE ?
  7637	121732	001402				BEQ	12$		;BR IF NO
  7638	121734	004737	122010			JSR	PC,NEG36	;NEGATE 36 BIT WORD
  7639					
  7640	121740	042737	177760	147466	12$:	BIC	#177760,$DRAM+4	;STRIP OVERFLOW
  7641	121746	012700	147462			MOV	#$DRAM,R0	;RETURN STORAGE ADR IN R0
  7642	121752	000137	122340			JMP	$TTERM		;VERIFY TERMINATION & EXIT
  7643	121756	005000			69$:	CLR	R0		;NO DIGITS TYPED
  7644	121760	104201			9$:	TTERM			;VERIFY TERMINATION
  7645						EXITERR			;ERROR RETURN
  7646	121762	000137	124036			  JMP	$EXITE
  7647					
  7648					;SHIFT 36 BIT WORD C(R1) PLACES LEFT
  7649					
  7650	121766	012705	147462		SHFT36:	MOV	#$DRAM,R5
  7651	121772	000241				CLC
  7652	121774	006125				ROL	(R5)+
  7653	121776	006125				ROL	(R5)+
  7654	122000	006125				ROL	(R5)+
  7655	122002	005301				DEC	R1
  7656	122004	003370				BGT	SHFT36
  7657	122006	000207				RTS	PC
  7658					
  7659					;NEGATE - TWO'S COMPLEMENT 36 BIT WORD
  7660					
  7661	122010	012701	147462		NEG36:	MOV	#$DRAM,R1	;MAKE 1'S COMPLEMENT
  7662	122014	005121				COM	(R1)+
  7663	122016	005121				COM	(R1)+
  7664	122020	005111				COM	(R1)
  7665	122022	012701	147462			MOV	#$DRAM,R1
  7666	122026	062721	000001			ADD	#1,(R1)+	;MAKE THAT 2'S COMPLEMENT
  7667	122032	005521				ADC	(R1)+
  7668	122034	005511				ADC	(R1)
  7669	122036	042711	177760			BIC	#177760,(R1)	;STRIP OVERFLOW
  7670	122042	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 216
		SUB11 PAL[KL,SYS]	Page 28.1 	READ A 12 DIGIT OCTAL (36 BIT) NUMBER

  7671					
  7672	122044	012700	147462		$TI36C:	MOV	#$DRAM,R0	;CLEAR STORAGE
  7673	122050	005020				CLR	(R0)+
  7674	122052	005020				CLR	(R0)+
  7675	122054	005020				CLR	(R0)+
  7676	122056	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 217
		SUB11 PAL[KL,SYS]	Page 29 	SIGNED MULTIPLY SUBROUTINE

  7677					.SBTTL	SIGNED MULTIPLY SUBROUTINE
  7678					
  7679					$MULTP:	PUSH	R0
  7680	122062	016601	000022			MOV	22(SP),R1
  7681	122066	016600	000020			MOV	20(SP),R0	;MULTIPLICAND
  7682	122072	005004				CLR	R4		;CLEAR SIGN
  7683	122074	005700				TST	R0		;TEST SIGN
  7684	122076	100002				BPL	1$
  7685					
  7686	122100	005204				INC	R4		;SET SIGN BIT
  7687	122102	005400				NEG	R0		;MAKE MULTIPLICAND POSITIVE
  7688					
  7689	122104	005701			1$:	TST	R1		;TEST SIGN OF MULTIPLIER
  7690	122106	100002				BPL	2$
  7691					
  7692	122110	005304				DEC	R4		;UPDATE SIGN BIT
  7693	122112	005401				NEG	R1		;MAKE MULTIPLIER POSITIVE
  7694					
  7695	122114	012703	000021		2$:	MOV	#17.,R3		;SET LOOP COUNT
  7696	122120	005002				CLR	R2		;SET UP FOR MULTIPLY LOOP
  7697					
  7698	122122	103001			3$:	 BCC	4$		;DONT ADD IF MULTIPLICAND IS ZERO
  7699	122124	060102				ADD	R1,R2
  7700					
  7701	122126	006002			4$:	ROR	R2		;POSITION THE PARTIAL PRODUCT
  7702	122130	006000				ROR	R0		;AND THE MULTIPLICAND
  7703	122132	005303				DEC	R3		;DONE YET
  7704	122134	001372				BNE	3$		;NOPE
  7705					
  7706	122136	005704				TST	R4		;TEST SIGN
  7707	122140	001403				BEQ	5$		;PRODUCT IS POSITIVE
  7708					
  7709	122142	005400				NEG	R0		;PRODUCT SHOULD BE NEGATIVE
  7710	122144	005402				NEG	R2
  7711	122146	005600				SBC	R0		;SUBTRACT CARRY
  7712					
  7713	122150	010066	000020		5$:	MOV	R0,20(SP)	;MOST SIGNIFICANT BITS
  7714	122154	010266	000022			MOV	R2,22(SP)	;LEAST SIGNIFICANT BITS
  7715						POP	R0
  7716						EXIT			;EXIT
  7717	122162	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 218
		SUB11 PAL[KL,SYS]	Page 30 	BREAK CHARACTER

  7718					.SBTTL	BREAK CHARACTER
  7719					
  7720	122166	005337	150716		$TTIBRK:DEC	$INPTC		;BACKUP INPUT POINTER
  7721	122172	104005				TTICHR
  7722	122174	103122				 BCC	$$PEX4		;NOTHING IN BUFFER
  7723					$$PEX5:	EXITERR
  7724	122176	000137	124036			  JMP	$EXITE
  7725					
  7726					.SBTTL	TELETYPE INPUT SPACE DELETE ROUTINE
  7727					
  7728	122202	104005			$TTSDL:	TTICHR
  7729	122204	103446				 BCS	$TTSDX		;BUFFER EMPTY
  7730	122206	120027	000040			CMPB	R0,#BLANK
  7731	122212	001773				BEQ	$TTSDL		;DELETE SPACES
  7732	122214	120027	000011			CMPB	R0,#TAB
  7733	122220	001770				BEQ	$TTSDL		;DELETE TABS
  7734	122222	122700	000055			CMPB	#'-,R0			;TREAT + OR -
  7735	122226	001411				BEQ	3$			;SAME AS NUMBER
  7736	122230	122700	000053			CMPB	#'+,R0
  7737	122234	001406				BEQ	3$
  7738	122236	120027	000060			CMPB	R0,#60
  7739	122242	002406				BLT	1$		;BR IF NON-NUMBER
  7740	122244	120027	000071			CMPB	R0,#71
  7741	122250	003003				BGT	1$		;BR IF NON-NUMBER
  7742	122252	005337	150716		3$:	DEC	$INPTC		;NUMBER, BACKUP INPUT POINTER
  7743	122256	000471				BR	$$PEX4		;C-BIT CLEAR RETURN
  7744	122260	120027	000072		1$:	CMPB	R0,#':		;COLON OR SLASH, V-BIT & C-BIT SET
  7745	122264	001412				BEQ	10$
  7746	122266	120027	000057			CMPB	R0,#'/
  7747	122272	001407				BEQ	10$
  7748	122274	120027	000136			CMPB	R0,#'↑		;UPARROW, Z-BIT & C-BIT SET
  7749	122300	001336				BNE	$$PEX5
  7750	122302	052766	000004	000014		BIS	#ZBIT,14(SP)
  7751	122310	000732				BR	$$PEX5
  7752					
  7753	122312	052766	000002	000014	10$:	BIS	#VBIT,14(SP)
  7754	122320	000726				BR	$$PEX5
  7755	122322	000137	113452		$TTSDX:	JMP	$PARAM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 219
		SUB11 PAL[KL,SYS]	Page 31 	TELETYPE INPUT TERMINATION CHECK

  7756					.SBTTL	TELETYPE INPUT TERMINATION CHECK
  7757					
  7758	122326	005237	150716		$TTITRM:INC	$INPTC		;BECAUSE "TTERM" DECREMENTS
  7759	122332	104201			$TTBTRM:TTERM			;VERIFY TERMINATOR
  7760	122334	103772				BCS	$TTSDX		;BAD, C-BIT SET RETURN
  7761	122336	000441				BR	$$PEX4		;OK
  7762					
  7763					$TTERM:	PUSH	R0
  7764	122342	005337	150716			DEC	$INPTC		;BACKUP INPUT POINTER
  7765	122346	104005				TTICHR			;GET TERMINATION CHAR
  7766	122350	103407				 BCS	2$		;NONE
  7767	122352	012701	122400			MOV	#TRMTAB,R1	;SETUP TERMINATION SCAN POINTER
  7768	122356	120011			1$:	CMPB	R0,(R1)		;CHAR MATCH LEGAL TERMINATOR ?
  7769	122360	001403				BEQ	2$		;YES
  7770	122362	105721				TSTB	(R1)+		;NOT YET, GO TO NEXT
  7771	122364	001403				BEQ	3$		;NO MATCH, ERROR
  7772	122366	000773				BR	1$
  7773					2$:	POP	R0
  7774	122372	000423				BR	$$PEX4		;OK, C-BIT CLEAR RETURN
  7775					3$:	POP	R0
  7776	122376	000677				BR	$$PEX5		;ERROR, C-BIT SET RETURN
  7777					
  7778	122400	   040		
  7779	122401	   011			TRMTAB:	.BYTE	SPACE,TAB
  7780	122402	   054		
  7781	122403	   015				.BYTE	COMMA,CR
  7782	122404	   033		
  7783	122405	   072				.BYTE	ALTMOD,72	;COLON
  7784	122406	   057		
  7785	122407	   000				.BYTE	57,0		;SLASH
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 220
		SUB11 PAL[KL,SYS]	Page 32 	INPUT & CHECK OCTAL NUMBER

  7786					.SBTTL	INPUT & CHECK OCTAL NUMBER
  7787					
  7788	122410	104016			$TTCOCT:TTISDL
  7789	122412	103743				 BCS	$TTSDX
  7790	122414	104007				TTIOCT
  7791	122416	103741				 BCS	$TTSDX		;NON-OCTAL
  7792	122420	000410				BR	$$PEX4		;OK
  7793					
  7794	122422	104010			$TOCTE:	TTCOCT
  7795	122424	032700	000001			BIT	#1,R0		;ONLY EVEN OCTAL
  7796	122430	001334				BNE	$TTSDX
  7797	122432	000403				BR	$$PEX4
  7798					
  7799					.SBTTL	TELETYPE DELETE SPACES & INPUT OCTAL NUMBER
  7800					
  7801	122434	104010			$TTSDO:	TTCOCT
  7802	122436	005700				TST	R0		;MUST BE POSITIVE ALSO
  7803	122440	100730				BMI	$TTSDX
  7804		122442			$$PEX4=.
  7805						EXIT
  7806	122442	000137	124064			  JMP	$EXIT
  7807					
  7808					.SBTTL	TELETYPE DELETE SPACES & INPUT 36BIT NUMBER
  7809					
  7810	122446	104016			$TTS36:	TTISDL			;DELETE SPACES
  7811	122450	103724				 BCS	$TTSDX
  7812	122452	104014				TTI36			;INPUT 36 BIT NUMBER
  7813	122454	103722				 BCS	$TTSDX
  7814	122456	000771				BR	$$PEX4
  7815					
  7816					.SBTTL	TELETYPE INPUT C-RAM ADDRESS
  7817					
  7818	122460	104017			$TICRA:	TTISDO			;GET ADDRESS
  7819	122462	020027	002777			CMP	R0,#2777
  7820	122466	003765				BLE	$$PEX4
  7821	122470	000137	113350			JMP	ADRERR		;TOO BIG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 221
		SUB11 PAL[KL,SYS]	Page 33 	SHIFT R0 RIGHT/LEFT ROUTINES

  7822					.SBTTL	SHIFT R0 RIGHT/LEFT ROUTINES
  7823					
  7824	122474	017701	025134		$SHFTR:	MOV	@$EMADR,R1	;GET SHIFT COUNT
  7825	122500	006200			1$:	ASR	R0		;SHIFT RIGHT
  7826	122502	005301				DEC	R1
  7827	122504	003375				BGT	1$
  7828					$SHFTX:	EXITSKP			;SKIP OVER TRAILING PARAMETER
  7829	122506	000137	124056			  JMP	$EXITS
  7830					
  7831	122512	017701	025116		$SHFTL:	MOV	@$EMADR,R1
  7832	122516	006300			1$:	ASL	R0		;SHIFT LEFT
  7833	122520	005301				DEC	R1
  7834	122522	003375				BGT	1$
  7835	122524	000770				BR	$SHFTX
  7836					
  7837					.SBTTL	PRINT MESSAGE, CONDITIONAL DEPENDING ON "RPTFLG"
  7838					
  7839	122526	105737	147732		$$PMSR:	TSTB	RPTFLG		;DOES REPEAT FLAG ALLOW PRINTING ?
  7840	122532	001365				BNE	$SHFTX		;NO
  7841					
  7842					.SBTTL	PRINT MESSAGE
  7843					
  7844	122534	017700	025074		$$PMSG:	MOV	@$EMADR,R0	;MESSAGE ADDRESS TO R0
  7845	122540	104024				PNTAL			;PRINT
  7846	122542	000761				BR	$SHFTX		;SKIP RETURN
  7847					
  7848					.SBTTL	PRINT CHARACTER IMMEDIATE
  7849					
  7850	122544	013702	147634		$PNTCI:	MOV	$EMADR,R2	;GET DATA ADDRESS
  7851	122550	112201				MOVB	(R2)+,R1	;GET FIRST BYTE
  7852	122552	104154				PLDBUF			;INSERT IN BUFFER
  7853	122554	111201				MOVB	(R2),R1		;GET 2ND BYTE
  7854	122556	001401				BEQ	1$		;IS THERE ANY ?
  7855	122560	104154				PLDBUF			;YES, INSERT IN BUFFER
  7856	122562	000751			1$:	BR	$SHFTX		;SKIP RETURN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 222
		SUB11 PAL[KL,SYS]	Page 34 	SMALL TIME DELAY

  7857					.SBTTL	SMALL TIME DELAY
  7858					
  7859	122564	012701	000012		$DELAY:	MOV	#10.,R1
  7860	122570	005301			1$:	DEC	R1
  7861	122572	001376				BNE	1$
  7862						EXIT
  7863	122574	000137	124064			  JMP	$EXIT
  7864					
  7865					;CONSOLE TIME DELAY FOR REPEAT LOOPS
  7866					
  7867	122600	104016			.TD:	TTISDL
  7868	122602	103404				 BCS	1$		;NO ARG, DO ONCE
  7869	122604	104011				TTIDEC
  7870	122606	103402				 BCS	1$		;DO ONCE ANYWAY
  7871	122610	010001				MOV	R0,R1		;SAVE DELAY COUNT
  7872	122612	000401				BR	2$
  7873	122614	005001			1$:	CLR	R1
  7874	122616	104056			2$:	TDELAY			;SMALL TIME DELAY
  7875	122620	005301				DEC	R1		;DONE REQUESTED DELAYS ?
  7876	122622	003375				BGT	2$
  7877	122624	000137	100230			JMP	$KONSL
  7878					
  7879					.SBTTL	SAVE AND RESTORE R0-R5 ROUTINES
  7880					
  7881					$REGSAV:PUSH	R0
  7882						PUSH	16(SP)
  7883						PUSH	16(SP)
  7884	122642	000002				RTI
  7885					
  7886					;*RESTORE R0-R5
  7887					
  7888	122644	016666	000014	000034	$REGRST:MOV	14(SP),34(SP)
  7889	122652	016666	000012	000032		MOV	12(SP),32(SP)
  7890	122660	062706	000016			ADD	#16,SP
  7891						POP	<R0,R5,R4,R3,R2,R1>
  7892	122700	000002				RTI
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 223
		SUB11 PAL[KL,SYS]	Page 35 	SAVE AND RESTORE R0-R5 ROUTINES

  7893					;FATAL VECTOR INTERRUPT
  7894					
  7895					$FATLE:	PUSH	R0
  7896						PMSG	<?FATAL INTR>
  7897	122704	104025				  $PMSG
  7898	122706	146062				  $$CLIT
  7899	122710	000407				BR	$EOR
  7900					
  7901					$TIMOT:	PUSH	R0
  7902						PMSG	<?BUS TIMEOUT>
  7903	122714	104025				  $PMSG
  7904	122716	146076				  $$CLIT
  7905	122720	000403				BR	$EOR
  7906					
  7907					$RESVD:	PUSH	R0
  7908						PMSG	<?RESERVED INST>
  7909	122724	104025				  $PMSG
  7910	122726	146113				  $$CLIT
  7911					
  7912	122730	005037	147670		$EOR:	CLR	TENRUN
  7913						POP	R0
  7914						PUSH	<R1,R2,R3,R4,R5,R0>
  7915	122752	000414				BR	$EOR2
  7916					
  7917					;STACK UNDERFLOW
  7918					
  7919	122754	012706	157774		$STUF:	MOV	#STACK-2,SP
  7920	122760	010637	147736			MOV	SP,$KONSP
  7921						PMSG	<?ST UNFLO>
  7922	122764	104025				  $PMSG
  7923	122766	146132				  $$CLIT
  7924	122770	005037	152214			CLR	PCMDFLG
  7925	122774	000137	100004			JMP	$CNTLC
  7926					
  7927					$NOTAS:	PMSG	<?UNAS EMT>
  7928	123000	104025				  $PMSG
  7929	123002	146144				  $$CLIT
  7930	123004	005037	152214		$EOR2:	CLR	PCMDFLG
  7931	123010	000137	115262			JMP	$PH1
  7932					
  7933					$FATAL:	PUSH	R0
  7934						PMSG	<?FATAL>
  7935	123016	104025				  $PMSG
  7936	123020	146156				  $$CLIT
  7937	123022	000770				BR	$EOR2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 224
		SUB11 PAL[KL,SYS]	Page 36 	EMT DECODER

  7938					.SBTTL	EMT DECODER
  7939					
  7940					;*THIS ROUTINE WILL PICKUP THE LOWER BYTE OF THE "EMT" INSTRUCTION
  7941					;*AND USE IT TO INDEX THROUGH THE EMT TABLE FOR THE STARTING ADDRESS
  7942					;*OF THE DESIRED ROUTINE. THEN USING THE ADDRESS OBTAINED IT WILL
  7943					;*GO TO THAT ROUTINE.
  7944					
  7945	123024	020627	157360		$EMTRP:	CMP	SP,#$$STKM		;check against stack bottom
  7946	123030	003751				BLE	$STUF			;OFF BOTTOM OF STACK
  7947						PUSH	<R1,R2,R3,R4,R5,R0>
  7948	123046	016600	000014			MOV	14(SP),R0		;GET EMT ADDRESS (+2)
  7949	123052	042766	000017	000016		BIC	#17,16(SP)		;CLEAR ALL STATUS BITS
  7950	123060	010037	147634			MOV	R0,$EMADR		;SAVE
  7951	123064	014000				MOV	-(R0),R0		;GET RIGHT BYTE OF EMT
  7952	123066	042700	177400			BIC	#177400,R0
  7953	123072	020027	000240			CMP	R0,#<<$EMTAE-$EMTAD>/2>
  7954	123076	002340				BGE	$NOTAS			;EMT IN RANGE ?
  7955						SL	R0,1			;ROUND TO WORD ADDRESS
  7956	123102	016000	123110			MOV	$EMTAD(R0),R0		;INDEX TO TABLE
  7957	123106	000200				RTS	R0			;GO TO ROUTINE
  7958					
  7959					.SBTTL	EMT TABLE
  7960					
  7961					;*THIS TABLE CONTAINS THE STARTING ADDRESSES OF THE ROUTINES CALLED
  7962					;*BY THE "EMT" INSTRUCTION.
  7963					
  7964					;	ROUTINE
  7965					;	-------
  7966	123110	123014			$EMTAD:	$FATAL		;EMT + 0
  7967	123112	115232				$ERRHLT		; 1
  7968	123114	115222				$PRGHLT		; 2
  7969	123116	107030				$RUNLP		; 3
  7970	123120	120150				$TTILIN		; 4	
  7971	123122	117622				$TTICHR		; 5
  7972	123124	117654				$TTLOOK		; 6
  7973	123126	121074				$TTIOCT		; 7
  7974	123130	122410				$TTCOCT		;EMT + 10
  7975	123132	121232				$TTIDEC		; 11	
  7976	123134	117746				$TTIYES		; 12
  7977	123136	117702				$TTALTM		; 13
  7978	123140	121344				$TTI36		; 14	
  7979	123142	122166				$TTIBRK		; 15
  7980	123144	122202				$TTSDL		; 16
  7981	123146	122434				$TTSDO		; 17
  7982	123150	122446				$TTS36		;EMT + 20
  7983	123152	122460				$TICRA		; 21
  7984	123154	122326				$TTITRM		; 22
  7985	123156	122332				$TTBTRM		; 23
  7986	123160	115522				$PNTAL		; 24	
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 225
		SUB11 PAL[KL,SYS]	Page 36.1 	EMT TABLE

  7987	123162	122534				$$PMSG		; 25
  7988	123164	122526				$$PMSR		; 26
  7989	123166	115624				$PNTCHR		; 27
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 226
		SUB11 PAL[KL,SYS]	Page 37 	EMT TABLE

  7990	123170	115614				$PNTNBR		;EMT + 30
  7991	123172	116742				$PCRLF		; 31
  7992	123174	115634				$PSPACE		; 32
  7993	123176	115642				$PSLASH		; 33
  7994	123200	115650				$PCOMMA		; 34
  7995	123202	117366				$PNTOCT		; 35
  7996	123204	117374				$PNTOSC		; 36	
  7997	123206	117476				$PNTDEC		; 37
  7998	123210	117114				$PNT18		;EMT + 40
  7999	123212	117130				$PNT23		; 41
  8000	123214	117154				$PNT36		; 42
  8001	123216	120046				$PFORCE		; 43
  8002	123220	120054				$PNORML		; 44	
  8003	123222	116750				$PBELL		; 45
  8004	123224	116772				$PNTODC		; 46
  8005	123226	116760				$PODT		; 47
  8006	123230	122630				$REGSAV		;EMT + 50	
  8007	123232	122644				$REGRST		; 51
  8008	123234	125316				$CMP36		; 52	
  8009	123236	122474				$SHFTR		; 53
  8010	123240	122512				$SHFTL		; 54
  8011	123242	124046				$SETFLG		; 55
  8012	123244	122564				$DELAY		; 56
  8013	123246	120026				$SWITCH		; 57	
  8014	123250	120040				$SWTSAM		;EMT + 60
  8015	123252	115220				$EOP		; 61	
  8016	123254	115220				$ERREOP		; 62
  8017	123256	115220				$EOPSET		; 63
  8018					.IF DF MONASB
  8019						$COMLIN		; 64
  8020						$COMSND		; 65
  8021						$COMACK		; 66
  8022						$COMNAK		; 67
  8023						$COMCLR		;EMT + 70
  8024						$COMCTL		; 71
  8025					.IFF
  8026		000006			.REPT 6
  8027						$FATAL		;64-71
  8028					.ENDR
  8029	123260	123014				$FATAL		;64-71
  8030	123262	123014				$FATAL		;64-71
  8031	123264	123014				$FATAL		;64-71
  8032	123266	123014				$FATAL		;64-71
  8033	123270	123014				$FATAL		;64-71
  8034	123272	123014				$FATAL		;64-71
  8035					.ENDC
  8036	123274	122060				$MULTP		; 72	
  8037	123276	142254				$WCRAM		; 73
  8038	123300	142564				$RCRAM		; 74
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 227
		SUB11 PAL[KL,SYS]	Page 37.1 	EMT TABLE

  8039	123302	142122				$WWADR		; 75
  8040	123304	141656				$MRESET		; 76	
  8041	123306	125616				$TENSP		; 77
  8042	123310	125400				$SM		;EMT + 100
  8043	123312	125474				$XCT		; 101
  8044	123314	144132				$LODAR		; 102
  8045	123316	124322				$EXAM		; 103
  8046	123320	124314				$EXAMT		; 104
  8047	123322	124240				$DPOS		; 105
  8048	123324	124234				$DPOST		; 106
  8049	123326	125150				$DPOSVR		; 107
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 228
		SUB11 PAL[KL,SYS]	Page 38 	EMT TABLE

  8050	123330	125144				$DPSVT		;EMT + 110
  8051	123332	124204				$D10MON		; 111
  8052	123334	124144				$D10ZRO		; 112
  8053	123336	140736				$DTEBAS		; 113
  8054	123340	141144				$DFXCT		; 114
  8055	123342	141114				$DXCTT		; 115
  8056	123344	140760				$DFRD		; 116
  8057	123346	141570				$DFRDMV		; 117	
  8058	123350	141400				$DFWRT		;EMT + 120
  8059	123352	141360				$DFWIR		; 121
  8060	123354	141130				$DFSCLK		; 122
  8061	123356	144440				$DFPC		; 123
  8062	123360	144456				$DFVMA		; 124
  8063	123362	144464				$DFADB		; 125
  8064	123364	143340				$RDRAM		; 126
  8065	123366	143270				$WDRAM		; 127
  8066	123370	143510				$DRAMAD		;EMT + 130
  8067	123372	143742				$BURST		; 131
  8068	123374	103600				$PNTCPU		; 132
  8069	123376	101452				$PRGCMD		; 133	
  8070	123400	117144				$P36B		; 134
  8071	123402	125544				$ECLOK		; 135
  8072	123404	123610				$ESYNC		; 136
  8073	123406	117046				$PADR		; 137
  8074	123410	140746				$DFRDT		;EMT + 140
  8075	123412	141620				$DWRTT		; 141
  8076	123414	126502				$PCRAM		; 142
  8077	123416	127600				$PDRAM		; 143
  8078	123420	120010				$TTBACK		; 144
  8079	123422	111762				$TENSW		; 145
  8080	123424	117346				$PROL36		; 146
  8081	123426	144226				$SETMPH		; 147
  8082	123430	144432				$DFVMH		;EMT + 150
  8083	123432	116040				$PRINTT		; 151
  8084	123434	116174				$PTTY		; 152
  8085					
  8086					.IF DF LPTASB
  8087						$PLPT		; 153
  8088					.IFF
  8089	123436	123014				$FATAL
  8090					.ENDC
  8091					
  8092	123440	115664				$PLDBUF		; 154
  8093	123442	134170				$R50UPK		; 155
  8094	123444	134134				$DTINIT		; 156
  8095					
  8096					.IF DF RPASB
  8097						$RPINIT		; 157
  8098					.IFF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 229
		SUB11 PAL[KL,SYS]	Page 38.1 	EMT TABLE

  8099	123446	123014				$FATAL
  8100					.ENDC
  8101					
  8102	123450	134032				$DVDATA		;EMT + 160
  8103	123452	134500				$DTREAD		; 161
  8104					
  8105					.IF DF RPASB
  8106						$RPREAD		; 162
  8107					.IFF
  8108	123454	123014				$FATAL
  8109					.ENDC
  8110					
  8111	123456	133772				$DVFRAM		; 163
  8112	123460	134110				$DVWRD		; 164
  8113	123462	135124				$ASCR50		; 165
  8114					
  8115					.IF DF RPASB
  8116						$RPLOAD		; 166
  8117						$RPFIND		; 167
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 230
		SUB11 PAL[KL,SYS]	Page 39 	EMT TABLE

  8118						$RPLKUP		;EMT + 170
  8119						$RPRDFL		; 171
  8120						$RPWRFL		; 172
  8121						$RPWRIT		; 173
  8122						$RPADDR		; 174
  8123						$RPBASE		; 175
  8124					.IFF
  8125		000010			.REPT 8
  8126						$FATAL
  8127					.ENDR
  8128	123464	123014				$FATAL
  8129	123466	123014				$FATAL
  8130	123470	123014				$FATAL
  8131	123472	123014				$FATAL
  8132	123474	123014				$FATAL
  8133	123476	123014				$FATAL
  8134	123500	123014				$FATAL
  8135	123502	123014				$FATAL
  8136					.ENDC
  8137					
  8138	123504	112106				$TENCHR		; 176
  8139	123506	115770				$PNTBAK		; 177
  8140	123510	122422				$TOCTE		;EMT + 200
  8141	123512	122340				$TTERM		; 201
  8142	123514	143732				$CLKPRM		; 202
  8143	123516	143132				$MICNUL		; 203
  8144	123520	143220				$MICFIL		; 204
  8145	123522	134506				$DTWRT		; 205
  8146	123524	130700				$NAMEXT		; 206
  8147	123526	133430				$DTAFILE	; 207
  8148					
  8149					.IF DF RPASB
  8150						$RPFILE		;EMT + 210
  8151					.IFF
  8152	123530	123014				$FATAL
  8153					.ENDC
  8154					
  8155	123532	134370				$DTRDFL		; 211
  8156	123534	134444				$DTWTFL		; 212
  8157	123536	134472				$DTBASE		; 213
  8158	123540	122544				$PNTCI		; 214
  8159	123542	116022				$PNTRST		; 215
  8160	123544	101444				$PRGNPT		; 216
  8161	123546	116006				$TTPINI		; 217
  8162					.IF DF MONASB
  8163						$COMCMD		;EMT + 220
  8164						$CMRTRY		; 221
  8165						$COMENQ		; 222
  8166						$COMEOT		; 223
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 231
		SUB11 PAL[KL,SYS]	Page 39.1 	EMT TABLE

  8167					.IFF
  8168		000004			.REPT 4
  8169						$FATAL
  8170					.ENDR
  8171	123550	123014				$FATAL
  8172	123552	123014				$FATAL
  8173	123554	123014				$FATAL
  8174	123556	123014				$FATAL
  8175					.ENDC
  8176	123560	120142				$TTILNW		; 224
  8177	123562	101636				$TTICCL		; 225
  8178	123564	104276				$DFLEGAL	; 226
  8179	123566	115656				$PTAB		; 227
  8180					
  8181					.IF DF RXASB
  8182						$RXFILE		;EMT + 230
  8183						$RXINIT		; 231
  8184						$RXRDFL		; 232
  8185						$RXWTFL		; 233
  8186						$RXBASE		; 234
  8187						$RXREAD		; 235
  8188						$RXWRT		; 236
  8189					.IFF
  8190		000007			.REPT 7
  8191						$FATAL
  8192					.ENDR
  8193	123570	123014				$FATAL
  8194	123572	123014				$FATAL
  8195	123574	123014				$FATAL
  8196	123576	123014				$FATAL
  8197	123600	123014				$FATAL
  8198	123602	123014				$FATAL
  8199	123604	123014				$FATAL
  8200					.ENDC
  8201					
  8202					.IF DF RPASB
  8203						$RPERR		; 237
  8204					.IFF
  8205	123606	123014				$FATAL
  8206					.ENDC
  8207					
  8208		123610			$EMTAE=.
  8209					
  8210					$ESYNC:	PUSH	R0
  8211	123612	000137	123000			JMP	$NOTAS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 232
		SUB11 PAL[KL,SYS]	Page 40 	POWER DOWN AND UP ROUTINES

  8212					.SBTTL	POWER DOWN AND UP ROUTINES
  8213					
  8214	123616	012737	123630	000024	$PWRDN:	MOV	#$PWRUP,@#PWRVEC	;SET UP VECTOR
  8215	123624	000000			$ILLUP:	HALT
  8216	123626	000776				BR	$ILLUP			;HANG UP
  8217					
  8218					;POWER UP ROUTINE
  8219					
  8220	123630	012737	000140	177776	$PWRUP:	MOV	#CPUPR,PS		;SET CPU PRIORITY
  8221	123636	012706	157776			MOV	#STACK,SP		;SET SP 
  8222					.LIF DF SAILVR
  8223	123642	004737	125746			JSR PC,CLKSTA			;START CLOCK
  8224	123646	005005				CLR	R5			;WAIT LOOP FOR THE TTY
  8225	123650	005205			1$:	INC	R5			;WAIT FOR THE INC
  8226	123652	001376				BNE	1$			;OF  WORD
  8227	123654	012737	123616	000024		MOV	#$PWRDN,@#PWRVEC	;SET UP THE POWER DOWN VECTOR
  8228	123662	005037	077776			CLR	CONSOL-2
  8229	123666	005037	157304			CLR	LPTFLG			;DISCONNECT LINE PRINTER
  8230					.IF NDF TELASB
  8231						CLR	DL11EFLG		;DISCONNECT KLINIK !!!
  8232					.IFF
  8233	123672	005037	152236			CLR FSFLG
  8234	123676	012777	000004	754124		MOV #DLRTS,@$FSTKS
  8235	123704	012700	116100			MOV #40000.,R0			;40000*2.36USEC = 94.4 MS
  8236	123710	077001				SOB R0,.			;WAIT FOR DATA SET TO HANG UP
  8237	123712	052777	000046	754110		BIS #DLRTS!DLDTR!DLDIE,@$FSTKS	;SET DATA TERM READY AND DATA SET INT ENB
  8238							;LEAVE REQUEST TO SEND UP ALTHOUGH WE DON'T USE IT
  8239					.ENDC
  8240	123720	005237	157312			INC	$PWRCNT			;COUNT POWER RESTARTS
  8241					
  8242					.IF NDF SAILVR
  8243						MOV	#KWLKS,R3
  8244						CLR	R5
  8245					10$:	TSTB	(R3)		;WAIT FOR CLOCK TICK
  8246						BPL	10$
  8247						BIC	#200,(R3)
  8248					.IFF
  8249	123724	005037	157160			CLR	CLKFLG
  8250	123730	005737	157160		10$:	TST	CLKFLG
  8251	123734	001775				BEQ	10$
  8252	123736	005037	157160			CLR	CLKFLG
  8253					.ENDC
  8254	123742	005205				INC	R5		;COUNT IT
  8255	123744	020527	000454			CMP	R5,#<5.*60.>	;WAITED 5 SEC FOR TTY POWER ?
  8256	123750	003767				BLE	10$		;NOT YET
  8257						PMSG	<\"POWER RESTART" >
  8258	123752	104025				  $PMSG
  8259	123754	146165				  $$CLIT
  8260	123756	013700	157312			MOV	$PWRCNT,R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 233
		SUB11 PAL[KL,SYS]	Page 40.1 	POWER DOWN AND UP ROUTINES

  8261	123762	104037				PNTDEC
  8262	123764	104031				PCRLF
  8263	123766	005005				CLR	R5		;CLEAR TIME-UP COUNTER
  8264	123770	004737	120670		2$:	JSR	PC,$TIRDY	;ANY OPERATOR INTERRUPT ?
  8265	123774	103407				BCS	3$		;NO
  8266	123776	113704	147744			MOVB	$TICHR,R4	;YES, GET CHAR
  8267	124002	142704	000200			BICB	#200,R4
  8268	124006	122704	000003			CMPB	#CNTRLC,R4	;IS IT CONTROL C ?
  8269	124012	001407				BEQ	4$		;YES, ABORT TIME-UP WAIT
  8270					3$:
  8271					.IF NDF SAILVR
  8272						TSTB	(R3)		;CLOCK SET ?
  8273						BPL	2$		;NO
  8274						BIC	#200,(R3)
  8275					.IFF
  8276	124014	005737	157160			TST CLKFLG
  8277	124020	001763				BEQ 2$
  8278					.ENDC
  8279	124022	005205				INC	R5		;COUNT CLOCK TICK
  8280	124024	020527	000454			CMP	R5,#<5.*60.>	;WAITED 5 SECONDS FOR KL10 ?
  8281	124030	003757				BLE	2$		;NOT YET
  8282	124032	000137	100000		4$:	JMP	START
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 234
		SUB11 PAL[KL,SYS]	Page 41 	EXIT SUBROUTINE

  8283					.SBTTL	EXIT SUBROUTINE
  8284					
  8285	124036	052766	000001	000014	$EXITE:	BIS	#CBIT,14(SP)	;SET C-BIT ERROR
  8286	124044	000407				BR	$EXIT
  8287					
  8288	124046	017701	023562		$SETFLG:MOV	@$EMADR,R1		;SET -1 TO FLAG WORD
  8289	124052	012711	777777			MOV	#-1,(R1)
  8290					
  8291	124056	062766	000002	000012	$EXITS:	ADD	#2,12(SP)		;SKIP RETURN
  8292					$EXIT:	POP	<R5,R4,R3,R2,R1>
  8293	124076	000006			1$:	RTT				;RETURN TO USER
  8294					
  8295					;MEMORY PARITY
  8296					
  8297	124100	005737	147612		MEMPE:	TST	MEMPEF		;BEEN HERE ALREADY ?
  8298	124104	100001				BPL	1$
  8299	124106	104000				FATAL			;YES
  8300	124110	005137	147612		1$:	COM	MEMPEF		;SET FLAG
  8301	124114	042737	000001	172100		BIC	#MMPIE,MMLPBA	;CLEAR ENABLE
  8302	124122	032737	100000	172100		BIT	#MMERRF,MMLPBA	;ERROR SET ?
  8303	124130	001001				BNE	2$
  8304	124132	104000				FATAL			;NO, HOW DID THIS GET HERE ?
  8305					2$:	PMSG	<?PARITY>
  8306	124134	104025				  $PMSG
  8307	124136	146207				  $$CLIT
  8308	124140	000137	100004			JMP	$CNTLC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 235
		SUB11 PAL[KL,SYS]	Page 42 	PDP10 OPERATIONS

  8309					.SBTTL	PDP10 OPERATIONS
  8310					
  8311					;PDP-10 MEMORY ZERO
  8312					; R0 = COUNT, R1 = POINTER TO START ADDRESS
  8313					
  8314	124144	010005			$D10ZRO: MOV	R0,R5		;SAVE COUNT
  8315	124146	005305				DEC	R5
  8316	124150	012704	147704			MOV	#.DPXAD,R4
  8317	124154	112124				MOVB	(R1)+,(R4)+
  8318	124156	112124				MOVB	(R1)+,(R4)+
  8319	124160	111114				MOVB	(R1),(R4)
  8320	124162	005744				TST	-(R4)
  8321	124164	005077	033136			CLR	@.DAT1		;CLEAR DTE20 DATA WORDS
  8322	124170	005077	033130			CLR	@.DAT2
  8323	124174	005077	033122			CLR	@.DAT3
  8324					
  8325	124200	010401			$D10ZX: MOV	R4,R1		;POINTER TO ADDRESS
  8326	124202	000440				BR	$DPSX1
  8327					
  8328					;PDP-10 SET -1 TO FLAG WORD
  8329					; ADDRESS IN TRAILING PARAMETER
  8330					
  8331	124204	012701	147702		$D10MON: MOV	#L10ADR+2,R1	;SETUP 10 ADR BLOCK POINTER
  8332	124210	005011				CLR	(R1)
  8333	124212	017741	023416			MOV	@$EMADR,-(R1)	;PUT 10 ADR IN ADR BLOCK
  8334	124216	012700	100056			MOV	#TENMO,R0	;SETUP -1 DATA WORD
  8335	124222	062766	000002	000012		ADD	#2,12(SP)	;SKIP RETURN OVER TRAILING PARAMETER
  8336	124230	005005				CLR	R5
  8337	124232	000405				BR	$DPOSX
  8338					
  8339					;EXAMINE AND DEPOSIT 10 MEMORY
  8340					
  8341	124234	004737	125352		$DPOST:	JSR PC,$10ADR		;SETUP PARAMETERS
  8342					
  8343	124240	005005			$DPOS:	CLR R5
  8344	124242	004737	125072			JSR PC,$D10ADR		;SETUP PDP-10 ADDRESS
  8345	124246	012702	147672		$DPOSX:	MOV #$TEMP0,R2		;STUFF THE DEXWRDS
  8346	124252	112022				MOVB (R0)+,(R2)+
  8347	124254	112022				MOVB (R0)+,(R2)+
  8348	124256	112022				MOVB (R0)+,(R2)+
  8349	124260	112022				MOVB (R0)+,(R2)+
  8350	124262	112022				MOVB (R0)+,(R2)+
  8351	124264	111022				MOVB (R0),(R2)+
  8352	124266	042742	177760			BIC #177760,-(R2)
  8353	124272	013703	157326			MOV .DAT1,R3
  8354	124276	011213				MOV (R2),(R3)		;BITS 00-03 TO .DAT1
  8355	124300	014243				MOV -(R2),-(R3)		;BITS 04-19 TO .DAT2
  8356	124302	014243				MOV -(R2),-(R3)		;BITS 20-35 TO .DAT3
  8357	124304	052761	010000	000002	$DPSX1:	BIS #DEP,2(R1)		;SET FLAG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 236
		SUB11 PAL[KL,SYS]	Page 42.1 	PDP10 OPERATIONS

  8358	124312	000414				BR $EXDEP
  8359					
  8360	124314	004737	125352		$EXAMT:	JSR PC,$10ADR		;SETUP PARAMETERS
  8361	124320	000405				BR $EXAMX
  8362					
  8363					;EXAMINE 10 CORE.  R0 POINTS TO 2 WORDS CONTAINING THE 10 ADDRESS
  8364					;	(BITS 20:35 IN FIRST WORD, 14:19 IN SECOND WORD)
  8365					;	RESULT RETURNED IN $DRAM (20:35), $DRAM+2 (4:19), $DRAM+4 (0:3)
  8366	124322	010001			$EXAM:	MOV R0,R1	
  8367	124324	004737	125072			JSR PC,$D10ADR		;SETUP PDP-10 ADDRESS
  8368	124330	012700	147462			MOV #$DRAM,R0
  8369	124334	005005			$EXAMX:	CLR R5
  8370	124336	042761	010000	000002		BIC #DEP,2(R1)		;CLEAR FLAG BIT
  8371	124344	012777	000020	033002	$EXDEP:	MOV #EBUSPC,@.STDTE	;E-BUS PARITY CLEAR
  8372					
  8373		000001			.IF EQ EPTREL
  8374						BIS #PHYS!PRTOFF,2(R1)
  8375					.IFF
  8376	124352	053761	147424	000002		BIS $TADSP,2(R1)	;$TADSP DESIGNATES ADDR MODE
  8377	124360	012737	104000	147424		MOV #PHYS!PRTOFF,$TADSP	;RESET ADDR MODE FOR NEXT EXDEP
  8378					.ENDC
  8379	124366	005737	147564			TST VRBFLG
  8380	124372	001425				BEQ 70$
  8381	124374	032777	002000	032746		BIT #KLRUN,@.DIAG1
  8382	124402	001021				BNE 70$
  8383						PUSH R0
  8384						PUSH @.DAT1		;IF VERBOSE AND KL IS NOT RUNNING THEN USE
  8385						PUSH @.DAT2		;APR FLAGS TO DETERMINE NXM, ETC.
  8386						PUSH @.DAT3
  8387	124422	012700	125064			MOV #$$CLRF,R0
  8388	124426	104101				EXCT			;EXECUTE A CONO APR,23400 TO CLR NXM,IOPGF,MB PAR
  8389						POP @.DAT3
  8390						POP @.DAT2
  8391						POP @.DAT1
  8392						POP R0
  8393	124446	016177	000002	032654	70$:	MOV 2(R1),@.TENA1
  8394	124454	011177	032652			MOV (R1),@.TENA2	;START DTE20
  8395	124460	013746	100104			MOV EMTIMO,-(SP)	;SET TIMEOUT COUNT
  8396	124464	032777	000004	032662	93$:	BIT #DEXDON,@.STDTE	;TEST BIT
  8397	124472	001034				BNE 94$			;LEAVE IF NOW A ONE(OK)
  8398	124474	005316				DEC (SP)		;DECREMENT COUNT
  8399	124476	001372				BNE 93$			;CONTINUE LOOP
  8400	124500	005737	147732			TST RPTFLG		;OTHERWISE TIMEOUT
  8401	124504	001027				BNE 94$			;UNLESS UNDER REPEAT
  8402	124506	005737	147564			TST VRBFLG
  8403	124512	001416				BEQ 95$
  8404						PUSH R0
  8405						PMSG <EXAM/DEPOSIT TIMEOUT, ADDRESS = >
  8406	124516	104025				  $PMSG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 237
		SUB11 PAL[KL,SYS]	Page 42.2 	PDP10 OPERATIONS

  8407	124520	146217				  $$CLIT
  8408	124522	010100				MOV R1,R0
  8409						PUSH 2(R0)
  8410	124530	042760	177700	000002		BIC #177700,2(R0)
  8411	124536	104137				PNTADR
  8412	124540	104031				PCRLF
  8413						POP 2(R1)
  8414						POP R0
  8415	124550	005037	147670		95$:	CLR TENRUN		;CLEAR TEN RUNNING
  8416	124554	005005				CLR R5			;CLEAR BLOCK ZERO INDICATOR
  8417	124556	052766	000001	000016		BIS #CBIT,16(SP)
  8418	124564	005737	147564		94$:	TST VRBFLG
  8419	124570	001475				BEQ 96$
  8420	124572	032777	002000	032550		BIT #KLRUN,@.DIAG1
  8421	124600	001071				BNE 96$			;KL IS STILL RUNNING
  8422						PUSH R0
  8423						PUSH @.DAT1
  8424						PUSH @.DAT2
  8425						PUSH @.DAT3
  8426	124620	012746	000000			MOV #0,-(SP)		;PUSH FLAG
  8427	124624	012700	000110			MOV #110,R0
  8428	124630	104116				DFRD			;BIT 7 IS APR NXM ERR IN
  8429	124632	032777	010000	032464		BIT #BIT12,@.DAT2	;BITS 4-19 (TEST BIT 7)
  8430	124640	001403				BEQ 89$			;BRANCH IF NOT SET
  8431	124642	005216				INC (SP)		;INC FLAG
  8432						PMSG <MBOX DETECTED NXM\>
  8433	124644	104025				  $PMSG
  8434	124646	146260				  $$CLIT
  8435	124650	032777	002000	032446	89$:	BIT #BIT10,@.DAT2	;TEST BIT 9
  8436	124656	001403				BEQ 88$			;EBUS BIT 9 IS APR MB PAR ERR IN
  8437	124660	005216				INC (SP)
  8438						PMSG <MB PARITY ERROR DETECTED\>
  8439	124662	104025				  $PMSG
  8440	124664	146303				  $$CLIT
  8441	124666	032777	004000	032430	88$:	BIT #BIT11,@.DAT2	;TEST BIT 8
  8442	124674	001403				BEQ 87$			;EBUS BIT 8 IS APR I/O PF ERR IN
  8443	124676	005216				INC (SP)
  8444						PMSG <IOPGF (PROB AR PAR ERR) DETECTED\>
  8445	124700	104025				  $PMSG
  8446	124702	146335				  $$CLIT
  8447	124704	005726			87$:	TST (SP)+		;TEST AND FLUSH FLAG, ZERO IF NO ERRORS DETECTED
  8448	124706	001417				BEQ 86$			;BRANCH IF NO ERRORS
  8449	124710	005737	147732			TST RPTFLG
  8450	124714	001414				BEQ 86$
  8451						PMSG <ADDR = >		;ERROR UNDER REPEAT, GIVE ADDRESS
  8452	124716	104025				  $PMSG
  8453	124720	146377				  $$CLIT
  8454	124722	010100				MOV R1,R0
  8455						PUSH 2(R0)
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 238
		SUB11 PAL[KL,SYS]	Page 42.3 	PDP10 OPERATIONS

  8456	124730	042760	177700	000002		BIC #177700,2(R0)
  8457	124736	104137				PNTADR
  8458	124740	104031				PCRLF
  8459						POP 2(R1)
  8460					86$:	POP @.DAT3
  8461						POP @.DAT2
  8462						POP @.DAT1
  8463						POP R0
  8464	124764	005726			96$:	TST (SP)+		;RESET STACK
  8465	124766	032761	010000	000002		BIT #DEP,2(R1)
  8466	124774	001020				BNE 1$			;DEPOSIT BRANCHES
  8467						PUSH R0
  8468	125000	013703	157322			MOV .DAT3,R3
  8469	125004	012320				MOV (R3)+,(R0)+		;BITS 20-35 FROM .DAT3
  8470	125006	012320				MOV (R3)+,(R0)+		;BITS 04-19 FROM .DAT2
  8471	125010	011310				MOV (R3),(R0)		;BITS 00-03 FROM .DAT1
  8472	125012	042710	177760			BIC #177760,(R0)
  8473						POP R0
  8474	125020	032777	000020	032326		BIT #BPARER,@.STDTE	;E-BUS PARITY ERROR ?
  8475	125026	001403				BEQ 1$			;NO
  8476	125030	052766	000017	000014		BIS #CBIT!VBIT!NBIT!ZBIT,14(SP) ;SET ALL COND BITS
  8477	125036	005705			1$:	TST R5			;EXAM, DPOS OR FINISHED BLOCK ZERO ?
  8478	125040	001407				BEQ 2$			;YES
  8479	125042	005305				DEC R5			;BLOCK ZERO, DECREMENT COUNT
  8480	125044	062714	000001			ADD #1,(R4)		;INCREMENT PDP-10 ADDRESS
  8481	125050	005564	000002			ADC 2(R4)
  8482	125054	000137	124200			JMP $D10ZX		;CLEAR NEXT WORD
  8483					2$:	EXIT
  8484	125060	000137	124064			  JMP	$EXIT
  8485					
  8486					$$CLRF:	IO10 CONO,APR,,23400	;CLEAR APR NXM, IO PG FAIL, MB PAR ERR
  8487		000000				  .IIF B ,I=0
  8488						  .IIF NB ,I=
  8489		000000				  .IIF B ,XR=0
  8490						  .IIF NB ,XR=
  8491		000002					BLKO=2
  8492		000003					DATAO=3
  8493		000000					BLKI=0
  8494		000001					DATAI=1
  8495		000004					CONO=4
  8496		000005					CONI=5
  8497		000006					CONSZ=6
  8498		000007					CONSO=7
  8499		000000					APR=0
  8500		000004					PI=4
  8501		000010					PAG=10
  8502		000014					CCA=14
  8503		000000					ADH=0
  8504		000000					ADL=0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 239
		SUB11 PAL[KL,SYS]	Page 42.4 	PDP10 OPERATIONS

  8505						  .IRPC AD1,23400
  8506						  .IIF GE <ADL-10000>,ADH=ADL/10000
  8507						  ADL=10*<ADL&7777>+AD1
  8508						  .ENDM
  8509		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8510		000002				  ADL=10*<ADL&7777>+2
  8511		770002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8512		000023				  ADL=10*<ADL&7777>+3
  8513		770023				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8514		000234				  ADL=10*<ADL&7777>+4
  8515		770234				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8516		002340				  ADL=10*<ADL&7777>+0
  8517		772340				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8518		023400				  ADL=10*<ADL&7777>+0
  8519		125072			.EVEN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 240
		SUB11 PAL[KL,SYS]	Page 43 	PDP10 OPERATIONS

  8520	125072	012704	147700		$D10ADR:MOV	#L10ADR,R4
  8521	125076	112124				MOVB	(R1)+,(R4)+
  8522	125100	112124				MOVB	(R1)+,(R4)+
  8523	125102	111114				MOVB	(R1),(R4)
  8524	125104	042714	177700			BIC	#177700,(R4)
  8525	125110	012701	147700			MOV	#L10ADR,R1
  8526	125114	000207				RTS	PC
  8527					
  8528					
  8529	125116	   077		
  8530	125117	   105		
  8531	125120	   055		
  8532	125121	   102		
  8533	125122	   125		
  8534	125123	   123		
  8535	125124	   040		
  8536	125125	   120		
  8537	125126	   101		
  8538	125127	   122		
  8539	125130	   111		
  8540	125131	   124		
  8541	125132	   131		
  8542	125133	   040		
  8543	125134	   105		
  8544	125135	   122		
  8545	125136	   122		
  8546	125137	   117		
  8547	125140	   122		
  8548	125141	   040		
  8549	125142	   000		
  8550					$EBPAR:	.ASCIZ/?E-BUS PARITY ERROR /
  8551		125144			.EVEN
  8552					
  8553	125144	004737	125352		$DPSVT:	JSR	PC,$10ADR	;SETUP PARAMETERS
  8554					
  8555					$DPOSVR:PUSH R0
  8556					.IIF NZ EPTREL,	PUSH $TADSP		;PUSH ADDRESS SPACE
  8557	125156	104105				DPOS
  8558	125160	103417				 BCS $DPVRP
  8559					.IIF NZ EPTREL,	POP $TADSP		;USE SAME ADDRESS SPACE FOR VERIFY
  8560	125166	010100				MOV R1,R0
  8561	125170	104103				EXAM
  8562	125172	103417				 BCS $DPVRE
  8563	125174	011600				MOV (SP),R0
  8564						PUSH R1				;SAVE ADDRESS
  8565	125200	012701	147462			MOV #$DRAM,R1
  8566	125204	104052				CMPR36
  8567	125206	103415				BCS $DPVRV			;VERIFY ERROR
  8568					$DPVRY:	POP R1
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 241
		SUB11 PAL[KL,SYS]	Page 43.1 	PDP10 OPERATIONS

  8569					$DPVRX:	POP R0
  8570						EXIT
  8571	125214	000137	124064			  JMP	$EXIT
  8572					
  8573					$DPVRP:					;DEPOSIT HALF OF DEPOSIT VERIFY LOST.
  8574	125220	005726			.IIF NZ EPTREL, TST (SP)+		;ADJUST STACK (REMOVE ADDR. SPACE)
  8575	125222	052766	000011	000016		BIS #CBIT!NBIT,16(SP)
  8576	125230	000770				BR $DPVRX			;NO, JUST GIVE ERROR RETURN
  8577					
  8578	125232	052766	000005	000016	$DPVRE:	BIS #CBIT!ZBIT,16(SP)		;EXAMINE HALF OF DEPOSIT VERIFY LOST
  8579	125240	000764				BR $DPVRX
  8580					
  8581	125242	052766	000003	000020	$DPVRV:	BIS #CBIT!VBIT,20(SP)		;SET C & V FOR VERIFY ERROR
  8582	125250	005737	147564			TST VRBFLG
  8583	125254	001755				BEQ $DPVRY
  8584						PMSG <\ADDRESS = >
  8585	125256	104025				  $PMSG
  8586	125260	146407				  $$CLIT
  8587						POP R0
  8588	125264	104137				PNTADR
  8589						PMSG <DEPOSIT DATA = >
  8590	125266	104025				  $PMSG
  8591	125270	146423				  $$CLIT
  8592						POP R0
  8593	125274	104042				PNT36
  8594						PMSG < EXAMINE DATA = >
  8595	125276	104025				  $PMSG
  8596	125300	146443				  $$CLIT
  8597	125302	012700	147462			MOV #$DRAM,R0
  8598	125306	104042				PNT36
  8599	125310	104031				PCRLF
  8600						EXIT
  8601	125312	000137	124064			  JMP	$EXIT
  8602					
  8603					;5-BYTE COMPARE ROUTINE, C & V BIT SET IF ERROR
  8604					
  8605					$CMP36:	PUSH	R1
  8606	125320	012702	000005			MOV	#5,R2
  8607	125324	122021			1$:	CMPB	(R0)+,(R1)+
  8608	125326	001003				BNE	2$
  8609	125330	005302				DEC	R2
  8610	125332	001374				BNE	1$
  8611	125334	000403				BR	3$
  8612	125336	052766	000003	000016	2$:	BIS	#CBIT!VBIT,16(SP)	;SET C & V FOR VERIFY ERROR
  8613					3$:	POP	R0			;POINT TO ACTUAL
  8614						EXIT
  8615	125346	000137	124064			  JMP	$EXIT
  8616					
  8617					;PDP-10 ADDRESS PARAMETER SETUP
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 242
		SUB11 PAL[KL,SYS]	Page 43.2 	PDP10 OPERATIONS

  8618					
  8619	125352	013705	147634		$10ADR:	MOV	$EMADR,R5	;SETUP TRAILING PARAMETER PICKUP
  8620	125356	012701	147702			MOV	#L10ADR+2,R1	;SETUP 10 ADR BLOCK POINTER
  8621	125362	005011				CLR	(R1)		;CLEAR HI ADR
  8622					
  8623	125364	012541				MOV	(R5)+,-(R1)	;SETUP PDP-10 ADDRESS
  8624	125366	011500				MOV	(R5),R0		;POINTER TO DATA BLOCK IN R0
  8625	125370	062766	000004	000014		ADD	#4,14(SP)	;RETURN OVER TRAILING PARAMETERS
  8626	125376	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 243
		SUB11 PAL[KL,SYS]	Page 44 	PDP10 OPERATIONS

  8627					;START MICROCODE
  8628					
  8629					$SM:	PUSH	R0
  8630	125402	104076				MRESET			;RESET KL10
  8631	125404	005000				CLR	R0		;SELECT UCODE START ADR
  8632	125406	104075				WWADR
  8633	125410	104115				DFXCTT			;GET CLOCK GOING
  8634	125412	000001				  STRCLK
  8635					
  8636	125414	012701	000002			MOV	#2,R1
  8637	125420	012700	125462			MOV	#$SMTAB,R0
  8638					1$:	PUSH	R0
  8639	125426	104101				EXCT			;DO TEN INSTR
  8640	125430	103410				 BCS	2$
  8641						POP	R0
  8642	125434	062700	000005			ADD	#5,R0		;NEXT
  8643	125440	005301				DEC	R1
  8644	125442	001370				BNE	1$
  8645					
  8646						POP	R0
  8647						EXIT
  8648	125446	000137	124064			  JMP	$EXIT
  8649					
  8650					2$:	POP	R0
  8651						POP	R0
  8652					$SMERR:	EXITERR
  8653	125456	000137	124036			  JMP	$EXITE
  8654					
  8655					$SMTAB:	IO10	CONO,APR,,200000	;IO SYS CLEAR
  8656		000000				  .IIF B ,I=0
  8657						  .IIF NB ,I=
  8658		000000				  .IIF B ,XR=0
  8659						  .IIF NB ,XR=
  8660		000002					BLKO=2
  8661		000003					DATAO=3
  8662		000000					BLKI=0
  8663		000001					DATAI=1
  8664		000004					CONO=4
  8665		000005					CONI=5
  8666		000006					CONSZ=6
  8667		000007					CONSO=7
  8668		000000					APR=0
  8669		000004					PI=4
  8670		000010					PAG=10
  8671		000014					CCA=14
  8672		000000					ADH=0
  8673		000000					ADL=0
  8674						  .IRPC AD1,200000
  8675						  .IIF GE <ADL-10000>,ADH=ADL/10000
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 244
		SUB11 PAL[KL,SYS]	Page 44.1 	PDP10 OPERATIONS

  8676						  ADL=10*<ADL&7777>+AD1
  8677						  .ENDM
  8678		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8679		000002				  ADL=10*<ADL&7777>+2
  8680		770002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8681		000020				  ADL=10*<ADL&7777>+0
  8682		770020				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8683		000200				  ADL=10*<ADL&7777>+0
  8684		770200				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8685		002000				  ADL=10*<ADL&7777>+0
  8686		772000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8687		020000				  ADL=10*<ADL&7777>+0
  8688		000002				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8689		000000				  ADL=10*<ADL&7777>+0
  8690						IO10	CONO,PI,,10000		;PI SYS CLEAR
  8691		000000				  .IIF B ,I=0
  8692						  .IIF NB ,I=
  8693		000000				  .IIF B ,XR=0
  8694						  .IIF NB ,XR=
  8695		000002					BLKO=2
  8696		000003					DATAO=3
  8697		000000					BLKI=0
  8698		000001					DATAI=1
  8699		000004					CONO=4
  8700		000005					CONI=5
  8701		000006					CONSZ=6
  8702		000007					CONSO=7
  8703		000000					APR=0
  8704		000004					PI=4
  8705		000010					PAG=10
  8706		000014					CCA=14
  8707		000000					ADH=0
  8708		000000					ADL=0
  8709						  .IRPC AD1,10000
  8710						  .IIF GE <ADL-10000>,ADH=ADL/10000
  8711						  ADL=10*<ADL&7777>+AD1
  8712						  .ENDM
  8713		770000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8714		000001				  ADL=10*<ADL&7777>+1
  8715		770001				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8716		000010				  ADL=10*<ADL&7777>+0
  8717		770010				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8718		000100				  ADL=10*<ADL&7777>+0
  8719		770100				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8720		001000				  ADL=10*<ADL&7777>+0
  8721		771000				  .IIF GE <ADL-10000>,ADH=ADL/10000
  8722		010000				  ADL=10*<ADL&7777>+0
  8723		125474				.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 245
		SUB11 PAL[KL,SYS]	Page 45 	PDP10 OPERATIONS

  8724					;PDP-10 INSTRUCTION EXECUTE
  8725					
  8726	125474	104102			$XCT:	LODAR
  8727	125476	103417				 BCS	6$
  8728	125500	104115				DFXCTT			;SET CONTINUE BUTTON
  8729	125502	000012				  CONBUT
  8730	125504	104115				DFXCTT			;RUN THE CLOCK
  8731	125506	000001				  STRCLK
  8732					
  8733	125510	005737	147732			TST	RPTFLG		;DOING REPEAT ?
  8734	125514	001011				BNE	2$		;YES, NO CHECK
  8735					
  8736	125516	012701	001750			MOV	#1000.,R1
  8737	125522	032777	001000	031620	4$:	BIT	#HALTLP,@.DIAG1
  8738	125530	001003				BNE	2$
  8739	125532	005301				DEC	R1		;NO, WAITED LONG ENOUGH
  8740	125534	001372				BNE	4$
  8741	125536	000747			6$:	BR	$SMERR
  8742					
  8743					2$:	EXIT
  8744	125540	000137	124064			  JMP	$EXIT
  8745					
  8746					;ECLOK - GIVE A COMPLETE EBOX CLOCK
  8747					
  8748	125544	012705	007640		$ECLOK:	MOV	#4000.,R5
  8749					
  8750	125550	104122			91$:	DFSCLK			;STEP RAW CLOCK
  8751	125552	104140				DFRDT			;READ CLOCK STATE
  8752	125554	000104				104
  8753	125556	032777	000004	031536		BIT	#BIT2,@.DAT3	;CLK E BOX SOURCE HIGH ?
  8754	125564	001010				BNE	92$
  8755	125566	005305				DEC	R5
  8756	125570	001367				BNE	91$
  8757	125572	005737	147732			TST	RPTFLG
  8758	125576	001003				BNE	92$
  8759	125600	052766	000001	000014		BIS	#CBIT,14(SP)	;REPORT TIMEOUT
  8760					
  8761	125606	104115			92$:	DFXCTT
  8762	125610	000004				  CECLK
  8763						EXIT
  8764	125612	000137	124064			  JMP	$EXIT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 246
		SUB11 PAL[KL,SYS]	Page 46 	PDP10 OPERATIONS

  8765					;PDP-10 CONTROLLED STOP ROUTINE
  8766					
  8767					$TENSP:	PUSH	R0
  8768	125620	005037	147670			CLR	TENRUN		;CLEAR LOGICAL TEN RUNNING FLAG
  8769					;;;;;	CLR	TENCLK		;CLEAR TEN USING CLOCK FLAG
  8770					;;;;;	DON'T CLEAR TENCLK.  YOU MIGHT WANT TO CONTINUE THE SYSTEM
  8771					
  8772	125624	012777	010201	031516		MOV	#DCOMST!DFUNC!<CLRRUN*1000>,@.DIAG1
  8773	125632	004737	141302			JSR	PC,$$DFXDN	;CLEAR RUN FLOP
  8774					
  8775	125636	012701	001750			MOV	#1000.,R1
  8776	125642	032777	001000	031500	1$:	BIT	#HALTLP,@.DIAG1
  8777	125650	001003				BNE	2$		;TEN RETURNED TO HALT LOOP
  8778	125652	005301				DEC	R1
  8779	125654	001372				BNE	1$
  8780	125656	000430				BR	5$		;FAILED TO RETURN TO HALT LOOP
  8781					
  8782	125660	104140			2$:	DFRDT
  8783	125662	000131				  131
  8784	125664	032777	000002	031432		BIT	#BIT1,@.DAT2	;BIT 18, CON CACHE LOOK
  8785	125672	001417				BEQ	4$		;FALSE, CACHE IS NOT ON
  8786					
  8787	125674	012700	104425			MOV	#$$CF,R0
  8788	125700	104101				EXCT			;EXECUTE CACHE FLUSH
  8789	125702	103416				  BCS	5$		;FAILED
  8790					
  8791	125704	012701	001750			MOV	#1000.,R1
  8792	125710	104140			3$:	DFRDT
  8793	125712	000110				  110
  8794	125714	032777	000004	031404		BIT	#BIT2,@.DAT1	;BIT 1, SWEEP BUSY ENABLE
  8795	125722	001403				BEQ	4$		;FINISHED SWEEP
  8796	125724	005301				DEC	R1
  8797	125726	001370				BNE	3$
  8798	125730	000403				BR	5$		;FAILED TO FINISH CACHE SWEEP
  8799					
  8800					4$:	POP	R0		;SUCESSFUL RETURN
  8801						EXIT
  8802	125734	000137	124064			  JMP	$EXIT
  8803					
  8804					5$:	POP	R0		;FAILED RETURN
  8805						EXITERR
  8806	125742	000137	124036			  JMP	$EXITE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 247
		SUB11 PAL[KL,SYS]	Page 47 	CLOCK INITIALIZATION, INTERRUPTS

  8807						.SBTTL	CLOCK INITIALIZATION, INTERRUPTS
  8808					.IF DF SAILVR
  8809					
  8810					CLKSTA:	PUSH R0
  8811	125750	012700	000100			MOV #KWLIV,R0
  8812	125754	012720	126054			MOV #CLKINT,(R0)+
  8813	125760	012710	000140			MOV #CPUPR,(R0)
  8814	125764	005037	157162			CLR KTIMBS		;ASSUME WE'RE NOT KEEPING TIMEBASE
  8815	125770	012700	157164			MOV #TIMBAS,R0
  8816	125774	005020				CLR (R0)+
  8817	125776	005020				CLR (R0)+
  8818	126000	005010				CLR (R0)
  8819	126002	012700	157172			MOV #TIM11,R0
  8820	126006	005020				CLR (R0)+
  8821	126010	005020				CLR (R0)+
  8822	126012	005010				CLR (R0)
  8823	126014	005037	157160			CLR CLKFLG
  8824	126020	042737	000300	177546		BIC #300,KWLKS		;CLEAR CLOCK FLAG AND INTERRUPT ENABLE
  8825	126026	105737	177546		1$:	TSTB KWLKS
  8826	126032	100375				BPL 1$			;LOOP UNTIL CLOCK FLAG COMES ON
  8827	126034	042737	000200	177546		BIC #200,KWLKS		;CLEAR CLOCK FLAG
  8828	126042	052737	000100	177546		BIS #100,KWLKS		;SET INTERRUPT ENABLE.
  8829						POP R0
  8830	126052	000207				RTS PC
  8831					
  8832					
  8833	126054	042737	000200	177546	CLKINT:	BIC #200,KWLKS		;CLEAR CLOCK FLAG
  8834	126062	005237	157160			INC CLKFLG		;INCREMENT SOFTWARE CLOCK FLAG
  8835	126066	005237	157172			INC TIM11
  8836	126072	005537	157174			ADC TIM11+2
  8837	126076	005537	157176			ADC TIM11+4
  8838	126102	005737	152234			TST FSCLKA
  8839	126106	001425				BEQ 3$			;NO FS CLOCK REQUESTS
  8840	126110	023737	157176	152232		CMP TIM11+4,FSRTIM+4
  8841	126116	003012				BGT 2$
  8842	126120	001020				BNE 3$
  8843	126122	023737	157174	152230		CMP TIM11+2,FSRTIM+2
  8844	126130	003005				BGT 2$
  8845	126132	001013				BNE 3$
  8846	126134	023737	157172	152226		CMP TIM11,FSRTIM
  8847	126142	002407				BLT 3$
  8848					2$:	PUSH R0
  8849	126146	013700	152234			MOV FSCLKA,R0
  8850	126152	005037	152234			CLR FSCLKA
  8851	126156	004710				JSR PC,@R0
  8852						POP R0
  8853	126162	005737	157162		3$:	TST KTIMBS
  8854	126166	001406				BEQ 4$			;JUMP IF NOT KEEPING A TIMEBASE
  8855	126170	005237	157164			INC TIMBAS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 248
		SUB11 PAL[KL,SYS]	Page 47.1 	CLOCK INITIALIZATION, INTERRUPTS

  8856	126174	005537	157166			ADC TIMBAS+2
  8857	126200	005537	157170			ADC TIMBAS+4
  8858	126204	032777	000004	751616	4$:	BIT #DLRTS,@$FSTKS	;SEE IF REQUEST TO SEND IS UP (CLEARED BY INIT)
  8859	126212	001002				BNE 5$			;YES, HAVEN'T BEEN RESET
  8860	126214	004737	114040			JSR PC,HANGU1
  8861	126220	005737	157142		5$:	TST TIMFLG		;DOES KL WANT TIME/DATE FROM BATTERY CLOCK?
  8862	126224	001406				BEQ 6$			;NO
  8863	126226	032737	007777	157172		BIT #7777,TIM11		;IS IT TIME YET? (EVERY 10000 TICS=1.13 SECS)
  8864	126234	001002				BNE 6$			;NO
  8865	126236	005237	157140			INC TMSFLG		;TELL C10COP TO STORE THE TIME
  8866	126242	000006			6$:	RTT			;DISMISS INTERRUPT
  8867					
  8868					.ENDC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 249
		KLDCP PAL[KL,SYS]	Page 5.4 	CLOCK INITIALIZATION, INTERRUPTS

  8869					
  8870								;KL10 C-Ram/D-Ram functions
  8871					.INSRT	FD11.PAL		
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 250
		FD11 PALII[KL,SYS]	Page 1 	CLOCK INITIALIZATION, INTERRUPTS

  8872				COMMENT ⊗   VALID 00015 PAGES
  8873				C REC  PAGE   DESCRIPTION
  8874				C00001 00001
  8875				C00003 00002	.SBTTL	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75
  8876				C00004 00003	3$:	MOV	R0,$ECADR	SAVE C-RAM ADDRESS
  8877				C00006 00004	FIELD PRINT OUT, THIS IS THE C-RAM BIT FIDDLER
  8878				C00008 00005	READ THE C-RAM AND PRINT ACTUAL BY E-BUS ARRANGMENT
  8879				C00009 00006		JSR	PC,$$ECA	PRINT C-RAM ADDRESS
  8880				C00010 00007	.SBTTL	DISPATCH RAM CONSOLE FUNCTIONS
  8881				C00011 00008		TTISDO				READ "J" FIELD
  8882				C00012 00009		TTISDO				READ ODD "J" FIELD
  8883				C00014 00010	EXAMINE D-RAM SUBROUTINE
  8884				C00015 00011	PRINT D-RAM IN LOGICAL FIELD FORMAT
  8885				C00017 00012	.SBTTL	DEPOSIT C-RAM SUBROUTINE
  8886				C00018 00013	C-RAM PRIMARY DECISION TABLE
  8887				C00020 00014	C-RAM SECONDARY DECISION TABLES
  8888				C00022 00015
  8889				C00023 ENDMK
  8890					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 251
		FD11 PALII[KL,SYS]	Page 2 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  8891					.SBTTL	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75
  8892					
  8893	126244	104226			$EC:	DFLEGAL			;FUNCTION LEGAL ?
  8894	126246	104016				TTISDL
  8895	126250	103402				BCS	8$		;NON-NUMBER
  8896					
  8897	126252	104021			1$:	TTICRA			;READ IN C-RAM ADDRESS
  8898	126254	000432				BR	3$
  8899					
  8900	126256	102005			8$:	BVC	82$
  8901	126260	013700	147724			MOV	$ECADR,R0	;COLON, READ & LIST SAME CRAM ADDRESS
  8902	126264	005237	150716			INC	$INPTC
  8903	126270	000426				BR	33$
  8904					
  8905	126272	104023			82$:	TTBTRM
  8906					
  8907		126274			$ALLEC=.
  8908	126274	104140				DFRDT			;EXAMINE PRESENT C-RAM OUTPUT
  8909	126276	000146				RCRAM2
  8910	126300	004737	126452			JSR	PC,$ECGET
  8911						PUSH	$ECADR
  8912	126310	104140				DFRDT			;READ HIGH ORDER BITS
  8913	126312	000147				RCRAM1
  8914						POP	R0		;LOW ORDER TO R0
  8915	126316	004737	126452			JSR	PC,$ECGET
  8916	126322	006300				ASL	R0		;POSITION TO 6-0
  8917	126324	006300				ASL	R0
  8918	126326	000300				SWAB	R0
  8919	126330	150037	147724			BISB	R0,$ECADR	;STUFF LOW ORDER
  8920	126334	012700	777777			MOV	#-1,R0		;-1 READS CURRENT C-RAM OUTPUT
  8921	126340	000402				BR	33$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 252
		FD11 PALII[KL,SYS]	Page 3 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  8922	126342	010037	147724		3$:	MOV	R0,$ECADR	;SAVE C-RAM ADDRESS
  8923					
  8924	126346	104074			33$:	RCRAM			;READ THE RAM ADDRESS
  8925					
  8926	126350	010037	147716			MOV	R0,$ADR1	;SAVE STARTING ADDRESS OF DATA LIST
  8927	126354	005737	147734			TST	ALLFLG
  8928	126360	001025				BNE	91$
  8929	126362	104031			9$:	PCRLF			;PRINT OCTAL VALUE OF C-RAM
  8930					
  8931	126364	004737	127026			JSR	PC,$$ECA	;PRINT C-RAM ADDRESS
  8932					
  8933	126370	013705	147716			MOV	$ADR1,R5	;GET C-RAM DATA LIST ADDRESS
  8934	126374	062705	000012			ADD	#12,R5
  8935	126400	011504				MOV	(R5),R4		;SAVE SPEC
  8936	126402	014500				MOV	-(R5),R0	;PRINT 1ST C-RAM WORD, LAST IN LIST
  8937	126404	104035				PNTOCT
  8938					
  8939	126406	014500				MOV	-(R5),R0	;PRINT 2ND C-RAM WORD
  8940	126410	104035				PNTOCT
  8941					
  8942	126412	014500				MOV	-(R5),R0	;PRINT 3RD C-RAM WORD
  8943	126414	104035				PNTOCT
  8944					
  8945	126416	014500				MOV	-(R5),R0	;PRINT 4TH C-RAM WORD
  8946	126420	104035				PNTOCT
  8947					
  8948	126422	014500				MOV	-(R5),R0	;PRINT 5TH C-RAM WORD
  8949	126424	104035				PNTOCT
  8950					
  8951	126426	010400				MOV	R4,R0		;PRINT 6TH C-RAM WORD (SPEC)
  8952	126430	104047				PNTODT
  8953	126432	000002				2
  8954					
  8955	126434	013700	147724		91$:	MOV	$ECADR,R0
  8956	126440	013701	147716			MOV	$ADR1,R1
  8957	126444	104142				PNTCRM			;PRINT C-RAM BY LOGICAL FIELDS
  8958	126446	000137	102262			JMP	ALLEXT
  8959					
  8960	126452	017737	030646	147724	$ECGET:	MOV	@.DAT2,$ECADR	;GET BITS 4,5
  8961	126460	117737	030642	147724		MOVB	@.DAT1,$ECADR	;GET BITS 0-3
  8962	126466	000337	147724			SWAB	$ECADR
  8963	126472	042737	170077	147724		BIC	#170077,$ECADR
  8964	126500	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 253
		FD11 PALII[KL,SYS]	Page 4 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  8965					;FIELD PRINT OUT, THIS IS THE C-RAM BIT FIDDLER
  8966					
  8967	126502	010037	147724		$PCRAM:	MOV	R0,$ECADR
  8968	126506	010137	147716			MOV	R1,$ADR1
  8969					
  8970					91$: PMSG <\ LOC/  J  T AR  AD BR MQ FM SCAD SC FE SH  # VMA MEM COND SPEC M\>
  8971	126512	104025				  $PMSG
  8972	126514	146464				  $$CLIT
  8973					
  8974	126516	004737	127026			JSR	PC,$$ECA	;PRINT C-RAM ADDRESS
  8975					
  8976	126522	012705	130062		$DCTPC:	MOV	#$CRMD0,R5	;GET PRIMARY DECISION TABLE ADDRESS
  8977	126526	005000			$DCTP1:	CLR	R0	
  8978	126530	012504				MOV	(R5)+,R4	;R4=SECONDARY DECISION TABLE ADDRESS
  8979	126532	001426				BEQ	$END		;WOW WE MADE IT TO THE END
  8980					
  8981	126534	112403			2$:	MOVB	(R4)+,R3	;GET A BYTE FROM SECONDARY TABLE
  8982	126536	001416				BEQ	$NEXT		;GET NEXT FIELD
  8983	126540	110302				MOVB	R3,R2		;CALCULATE BYTE LOCATION
  8984	126542	106203				ASRB	R3		;/2
  8985	126544	106203				ASRB	R3		;/4
  8986	126546	106203				ASRB	R3		;/8
  8987	126550	063703	147716			ADD	$ADR1,R3
  8988	126554	111303				MOVB	(R3),R3		;FETCH THE DATA BYTE
  8989	126556	142702	000370			BICB	#370,R2		;R2=BIT LOCATION
  8990	126562	106203			3$:	ASRB	R3		;CALCULATE BIT LOCATION
  8991	126564	005302				DEC	R2		;FOUND BIT YET
  8992	126566	002375				BGE	3$
  8993	126570	006100				ROL	R0		;PLACE BIT IN R0
  8994	126572	000760				BR	2$
  8995					
  8996	126574	112501			$NEXT:	MOVB	(R5)+,R1	;R1=OCTAL CHARACTERS IN NUMBER
  8997	126576	104046				PNTODC			;PRINT THE NUMBER
  8998	126600	112501				MOVB	(R5)+,R1	;R1=POST SPACING PARAMETER
  8999	126602	004737	117776			JSR	PC,$PNTSPC
  9000	126606	000747				BR	$DCTP1
  9001	126610	013705	147716		$END:	MOV	$ADR1,R5	;SPECIAL PRINT OF SPEC FIELD
  9002	126614	116500	000012			MOVB	12(R5),R0
  9003	126620	104047				PNTODT
  9004	126622	000002				2
  9005	126624	104032				PSPACE
  9006	126626	116500	000004			MOVB	4(R5),R0
  9007	126632	104053				SHIFTR
  9008	126634	000004				4
  9009	126636	042700	177776			BIC	#177776,R0
  9010	126642	104036				PNTOCS
  9011	126644	005737	147734			TST	ALLFLG
  9012	126650	001401				BEQ	1$
  9013	126652	104031				PCRLF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 254
		FD11 PALII[KL,SYS]	Page 4.1 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  9014					1$:	EXIT
  9015	126654	000137	124064			  JMP	$EXIT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 255
		FD11 PALII[KL,SYS]	Page 5 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  9016					;READ THE C-RAM AND PRINT ACTUAL BY E-BUS ARRANGMENT
  9017					
  9018	126660	104226			$RC:	DFLEGAL			;FUNCTION LEGAL ?
  9019	126662	104016				TTISDL
  9020	126664	103443				BCS	3$		;NON-NUMBER
  9021	126666	000426				BR	2$		;NUMBER, MUST BE ADDRESS
  9022					
  9023	126670	012700	000147		1$:	MOV	#RCRAM1,R0
  9024	126674	004537	127010			JSR	R5,$RCP		;FIRST 36
  9025	126700	012700	000146			MOV	#RCRAM2,R0
  9026	126704	004537	127010			JSR	R5,$RCP		;2ND 36
  9027	126710	012700	000145			MOV	#RCRAM3,R0
  9028	126714	004537	127010			JSR	R5,$RCP		;3RD 36
  9029	126720	012700	000144			MOV	#RCRAM4,R0
  9030	126724	004537	127010			JSR	R5,$RCP		;4TH 36
  9031	126730	005737	147732			TST	RPTFLG
  9032	126734	001001				BNE	11$
  9033	126736	104031				PCRLF
  9034	126740	000137	100230		11$:	JMP	$KONSL
  9035					
  9036	126744	104021			2$:	TTICRA			;GET C-RAM ADDRESS
  9037	126746	010037	147724			MOV	R0,$ECADR
  9038	126752	013700	147724		5$:	MOV	$ECADR,R0
  9039					
  9040	126756	104075				WWADR			;WRITE C-RAM ADDRESS
  9041					
  9042	126760	104122				DFSCLK
  9043	126762	104122				DFSCLK
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 256
		FD11 PALII[KL,SYS]	Page 6 	CONTROL RAM CONSOLE FUNCTIONS, 9-SEPTEMBER-75

  9044	126764	004737	127026			JSR	PC,$$ECA	;PRINT C-RAM ADDRESS
  9045	126770	104032				PSPACE
  9046					
  9047	126772	000736				BR	1$
  9048					
  9049	126774	102003			3$:	BVC	32$
  9050	126776	005237	150716			INC	$INPTC		;COLON, READ SAME C-RAM ADDRESS
  9051	127002	000763				BR	5$
  9052					
  9053	127004	104023			32$:	TTBTRM			;READ PRESENT C-RAM ADDRESS
  9054	127006	000730				BR	1$
  9055					
  9056	127010	012701	147710		$RCP:	MOV	#.DFRDA,R1
  9057	127014	104117				DFRDMV			;READ C-RAM
  9058					
  9059	127016	010100				MOV	R1,R0
  9060	127020	104042				PNT36			;PRINT IT
  9061	127022	104032				PSPACE
  9062	127024	000205			1$:	RTS	R5
  9063					
  9064					;PRINT C-RAM ADDRESS
  9065					
  9066	127026	013700	147724		$$ECA:	MOV	$ECADR,R0
  9067	127032	104047				PNTODT
  9068	127034	000004				4
  9069	127036	104033				PSLASH
  9070	127040	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 257
		FD11 PALII[KL,SYS]	Page 7 	DISPATCH RAM CONSOLE FUNCTIONS

  9071					.SBTTL	DISPATCH RAM CONSOLE FUNCTIONS
  9072					
  9073					;LOAD D-RAM SUBROUTINE
  9074					
  9075	127042	000137	113452		$DDNPR:	JMP	$PARAM
  9076					
  9077	127046	104226			$DD:	DFLEGAL			;FUNCTION LEGAL ?
  9078	127050	104017				TTISDO			;GET THE ADDRESS
  9079	127052	032700	000001			BIT	#1,R0
  9080	127056	001005				BNE	98$		;MUST BE EVEN ADDRESS
  9081					
  9082	127060	010037	147720			MOV	R0,$ADR		;SAVE THE ADDRESS
  9083					
  9084	127064	020027	000776			CMP	R0,#776		;TEST ADDRESS SIZE
  9085	127070	003402				BLE	2$
  9086	127072	000137	113350		98$:	JMP	ADRERR
  9087					
  9088	127076	104015			2$:	TTIBRK			;READ A CHARACTER
  9089	127100	103760				BCS	$DDNPR		;NO COLON
  9090					
  9091	127102	120027	000072			CMPB	R0,#':		;IS IT A COLON
  9092	127106	001403				BEQ	21$
  9093	127110	120027	000057			CMPB	R0,#'/
  9094	127114	001352				BNE	$DDNPR
  9095					
  9096	127116	004737	127434		21$:	JSR	PC,$DDA		;READ A FIELD
  9097	127122	010037	147462			MOV	R0,$DRAM	;STORE "A" FIELD
  9098					
  9099	127126	004737	127450			JSR	PC,$DDB
  9100	127132	050037	147462			BIS	R0,$DRAM	;STORE "B" FIELD
  9101					
  9102	127136	104017				TTISDO			;READ "P" FIELD
  9103	127140	042700	177776			BIC	#177776,R0	;SAVE "P" FIELD
  9104					
  9105	127144	104054				SHIFTL
  9106	127146	000005				  5
  9107	127150	050037	147462			BIS	R0,$DRAM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 258
		FD11 PALII[KL,SYS]	Page 8 	DISPATCH RAM CONSOLE FUNCTIONS

  9108	127154	104017				TTISDO				;READ "J" FIELD
  9109					
  9110	127156	020027	001777			CMP	R0,#1777
  9111	127162	003404				BLE	3$
  9112		127164			$DDSIZ=.
  9113						PMSG	<\J SIZE ERR>
  9114	127164	104025				  $PMSG
  9115	127166	146567				  $$CLIT
  9116	127170	000137	100004			JMP	$CNTLC
  9117					
  9118	127174	010037	147470		3$:	MOV	R0,$DRAM+6		;SAVE FOR COMMON
  9119	127200	042700	177760			BIC	#177760,R0
  9120	127204	050037	147462			BIS	R0,$DRAM		;SAVE "J" EVEN
  9121					
  9122					;DONE WITH EVEN NOW PROMPT FOR ODD
  9123					
  9124					$DRAMO:	PMSG	< DD >			;PROMPT
  9125	127210	104025				  $PMSG
  9126	127212	146603				  $$CLIT
  9127	127214	013700	147720			MOV	$ADR,R0			;ODD ADDRESS
  9128	127220	005200				INC	R0
  9129					
  9130	127222	104036				PNTOCS
  9131					
  9132						PMSG	<:←>			;PRINT COLON, OUTPUT
  9133	127224	104025				  $PMSG
  9134	127226	146610				  $$CLIT
  9135					
  9136	127230	104004				TTILIN
  9137	127232	103703				BCS	$DDNPR
  9138					
  9139	127234	004737	127434			JSR	PC,$DDA			;READ ODD "A" FIELD
  9140	127240	010037	147464			MOV	R0,$DRAM+2		;INSERT ODD "A" FIELD
  9141					
  9142	127244	004737	127450			JSR	PC,$DDB			;READ ODD "B" FIELD
  9143	127250	050037	147464			BIS	R0,$DRAM+2
  9144					
  9145	127254	104017				TTISDO				;READ ODD "P" FIELD
  9146					
  9147	127256	042700	177776			BIC	#177776,R0
  9148					
  9149	127262	104054				SHIFTL
  9150	127264	000005				  5
  9151	127266	050037	147464			BIS	R0,$DRAM+2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 259
		FD11 PALII[KL,SYS]	Page 9 	DISPATCH RAM CONSOLE FUNCTIONS

  9152	127272	104017				TTISDO				;READ ODD "J" FIELD
  9153					
  9154	127274	020027	001777			CMP	R0,#1777
  9155	127300	003331				BGT	$DDSIZ
  9156					
  9157	127302	010037	147472		1$:	MOV	R0,$DRAM+10		;SAVE FOR COMMON
  9158	127306	042700	177760			BIC	#177760,R0
  9159	127312	050037	147464			BIS	R0,$DRAM+2		;SAVE "J" ODD
  9160	127316	042737	000017	147470		BIC	#17,$DRAM+6
  9161	127324	042737	000017	147472		BIC	#17,$DRAM+10
  9162	127332	023737	147470	147472		CMP	$DRAM+6,$DRAM+10  ;ARE BOTH COMMONS THE SAME ?
  9163	127340	001410				BEQ	2$
  9164	127342	022737	000254	147720		CMP	#254,$ADR	;IS THIS JRST/JFCL ?
  9165	127350	001404				BEQ	2$		;YES, COMMONS MAY BE DIFFERENT
  9166						PMSG	<\J CMN ERR>
  9167	127352	104025				  $PMSG
  9168	127354	146613				  $$CLIT
  9169	127356	000137	100004			JMP	$CNTLC
  9170					
  9171	127362	013700	147472		2$:	MOV	$DRAM+10,R0	;USE ODD COMMON
  9172					
  9173						SR	R0,6
  9174	127402	010037	147466			MOV	R0,$DRAM+4	;INSERT "J" COMMON
  9175					
  9176	127406	013700	147720			MOV	$ADR,R0		
  9177	127412	012701	147462			MOV	#$DRAM,R1
  9178					
  9179	127416	104076				MRESET
  9180					
  9181	127420	104127				WDRAM			;WRITE THE D-RAM
  9182					
  9183	127422	104031				PCRLF
  9184	127424	000137	100230			JMP	@#$KONSL
  9185					
  9186	127430	000137	113452		99$:	JMP	$OCTN
  9187					
  9188	127434	104017			$DDA:	TTISDO			;READ "A" FIELD
  9189	127436	104054				SHIFTL
  9190	127440	000013				  11.
  9191	127442	042700	143777			BIC	#143777,R0
  9192	127446	000207				RTS	PC
  9193					
  9194	127450	104017			$DDB:	TTISDO			;READ "B" FIELD
  9195	127452	104054				SHIFTL
  9196	127454	000010				  8.
  9197	127456	042700	174377			BIC	#174377,R0
  9198	127462	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 260
		FD11 PALII[KL,SYS]	Page 10 	DISPATCH RAM CONSOLE FUNCTIONS

  9199					;EXAMINE D-RAM SUBROUTINE
  9200					
  9201	127464	000137	113452		$EDNOA:	JMP	$OCTN
  9202	127470	000137	113350		$EDODD:	JMP	ADRERR
  9203					
  9204	127474	104226			$ED:	DFLEGAL			;FUNCTION LEGAL ?
  9205	127476	104016				TTISDL
  9206	127500	103413				BCS	5$
  9207					
  9208	127502	104017				TTISDO			;READ THE ADDRESS
  9209	127504	032700	000001			BIT	#1,R0
  9210	127510	001367				BNE	$EDODD		;MUST BE EVEN ADDRESS
  9211	127512	010037	147722			MOV	R0,$EDADR
  9212	127516	020027	000777		4$:	CMP	R0,#777		;TEST FOR HIGHEST ADDRESS
  9213	127522	003414				BLE	2$
  9214	127524	000137	113350		41$:	JMP	ADRERR
  9215					
  9216	127530	102005			5$:	BVC	52$
  9217	127532	013700	147722		51$:	MOV	$EDADR,R0	;COLON, EXAMINE SAME DRAM ADDRESS
  9218	127536	005237	150716			INC	$INPTC
  9219	127542	000765				BR	4$
  9220					
  9221	127544	104023			52$:	TTBTRM
  9222	127546	013700	147722			MOV	$EDADR,R0
  9223	127552	000761				BR	4$
  9224					
  9225	127554	010037	147722		2$:	MOV	R0,$EDADR
  9226					
  9227	127560	104076				MRESET
  9228					
  9229	127562	104126				RDRAM			;READ D-RAM
  9230					
  9231	127564	010001				MOV	R0,R1
  9232	127566	013700	147722			MOV	$EDADR,R0
  9233					
  9234	127572	104143				PNTDRM			;PRINT D-RAM
  9235					
  9236	127574	000137	100230			JMP	$KONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 261
		FD11 PALII[KL,SYS]	Page 11 	DISPATCH RAM CONSOLE FUNCTIONS

  9237					;PRINT D-RAM IN LOGICAL FIELD FORMAT
  9238					
  9239	127600	010005			$PDRAM:	MOV	R0,R5
  9240						PMSG	<\ADR: A B P J\>
  9241	127602	104025				  $PMSG
  9242	127604	146626				  $$CLIT
  9243					
  9244	127606	016100	000004			MOV	4(R1),R0	;POSITION COMMON J-FIELD
  9245	127612	104054				SHIFTL
  9246	127614	000006				6			;FOR PRINTING
  9247	127616	010002				MOV	R0,R2
  9248					
  9249	127620	005004				CLR	R4
  9250					
  9251	127622	010500			1$:	MOV	R5,R0		;PRINT D-RAM ADDRESS
  9252	127624	104047				PNTODT
  9253	127626	000003				3
  9254	127630	104033				PSLASH
  9255	127632	104032				PSPACE
  9256					
  9257	127634	011100				MOV	(R1),R0		;PRINT A-FIELD
  9258	127636	104053				SHIFTR
  9259	127640	000013				11.
  9260	127642	104030				PNTNBR
  9261	127644	104032				PSPACE
  9262					
  9263	127646	011100				MOV	(R1),R0		;PRINT B-FIELD
  9264	127650	104053				SHIFTR
  9265	127652	000010				8.
  9266	127654	104030				PNTNBR
  9267	127656	104032				PSPACE
  9268					
  9269	127660	011100				MOV	(R1),R0		;PRINT PARITY
  9270	127662	104053				SHIFTR
  9271	127664	000005				5
  9272	127666	042700	177776			BIC	#177776,R0
  9273	127672	104030				PNTNBR
  9274	127674	104032				PSPACE
  9275					
  9276	127676	012100				MOV	(R1)+,R0	;PRINT J-FIELD
  9277	127700	042700	177760			BIC	#177760,R0
  9278	127704	050200				BIS	R2,R0
  9279	127706	104047				PNTODT
  9280	127710	000004				4
  9281					
  9282	127712	104031				PCRLF
  9283	127714	005704				TST	R4		;COMPLETED D-RAM PAIR ?
  9284	127716	001003				BNE	2$
  9285					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 262
		FD11 PALII[KL,SYS]	Page 11.1 	DISPATCH RAM CONSOLE FUNCTIONS

  9286	127720	005204				INC	R4		;NO, SET FLAG
  9287	127722	005205				INC	R5		;SETUP ODD ADDRESS
  9288	127724	000736				BR	1$		;GO DO ODD PRINTOUT
  9289					
  9290					2$:	EXIT
  9291	127726	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 263
		FD11 PALII[KL,SYS]	Page 12 	DEPOSIT C-RAM SUBROUTINE

  9292					.SBTTL	DEPOSIT C-RAM SUBROUTINE
  9293					
  9294	127732	000137	113452		$DCNCL:	JMP	$PARAM
  9295					
  9296	127736	104226			$DC:	DFLEGAL			;FUNCTION LEGAL ?
  9297	127740	104021				TTICRA
  9298	127742	010037	147720		2$:	MOV	R0,$ADR		;SAVE ADDRESS
  9299	127746	104015				TTIBRK			;GET THE COLON
  9300	127750	103770				BCS	$DCNCL
  9301	127752	120027	000072			CMPB	R0,#':
  9302	127756	001403				BEQ	20$
  9303	127760	120027	000057			CMPB	R0,#'/
  9304	127764	001362				BNE	$DCNCL		;NO COLON
  9305	127766	012705	150004		20$:	MOV	#$TTSAV,R5	;CLEAR STORAGE
  9306	127772	005025				CLR	(R5)+
  9307	127774	005025				CLR	(R5)+
  9308	127776	005025				CLR	(R5)+
  9309	130000	005025				CLR	(R5)+
  9310	130002	005025				CLR	(R5)+
  9311	130004	005015				CLR	(R5)
  9312	130006	012704	000005			MOV	#5,R4
  9313	130012	104016			4$:	TTISDL
  9314	130014	103413				BCS	3$		;USE 0'S AFTER FIRST NON-NUMBER
  9315	130016	104010				TTCOCT
  9316	130020	010045				MOV	R0,-(R5)
  9317	130022	005304				DEC	R4
  9318	130024	001372				BNE	4$
  9319	130026	104016				TTISDL
  9320	130030	103405				BCS	3$
  9321	130032	104010				TTCOCT
  9322	130034	042700	177740			BIC	#177740,R0
  9323	130040	010037	150016			MOV	R0,$TTSAV+12
  9324	130044	013700	147720		3$:	MOV	$ADR,R0
  9325	130050	012701	150004			MOV	#$TTSAV,R1
  9326	130054	104073				WCRAM
  9327	130056	000137	100230			JMP	@#$KONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 264
		FD11 PALII[KL,SYS]	Page 13 	DEPOSIT C-RAM SUBROUTINE

  9328					;C-RAM PRIMARY DECISION TABLE
  9329					;
  9330	130062	130160			$CRMD0:	.WORD	$FJ			;J FIELD
  9331	130064	   004		
  9332	130065	   001				.BYTE	4,1			;CHARACTERS , POST SPACING
  9333					
  9334	130066	130174				.WORD	$FT			;T FIELD
  9335	130070	   001		
  9336	130071	   001				.BYTE	1,1
  9337					
  9338	130072	130200				.WORD	$FAR			;AR FIELD
  9339	130074	   002		
  9340	130075	   001				.BYTE	2,1
  9341					
  9342	130076	130210				.WORD	$FAD			;AD FIELD
  9343	130100	   004		
  9344	130101	   001				.BYTE	4,1
  9345					
  9346	130102	130224				.WORD	$FBR			;BR FIELD
  9347	130104	   001		
  9348	130105	   002				.BYTE	1,2
  9349					
  9350	130106	130230				.WORD	$FMQ			;MQ FIELD
  9351	130110	   001		
  9352	130111	   002				.BYTE	1,2
  9353					
  9354	130112	130232				.WORD	$FFM			;FM FIELD
  9355	130114	   001		
  9356	130115	   002				.BYTE	1,2
  9357					
  9358	130116	130236				.WORD	$FSCAD			;SCAD FIELD
  9359	130120	   003		
  9360	130121	   002				.BYTE	3,2
  9361					
  9362	130122	130250				.WORD	$FSC			;SC FIELD
  9363	130124	   001		
  9364	130125	   002				.BYTE	1,2
  9365					
  9366	130126	130252				.WORD	$FFE			;FE FIELD
  9367	130130	   001		
  9368	130131	   002				.BYTE	1,2
  9369					
  9370	130132	130254				.WORD	$FSH			;SH FIELD
  9371	130134	   001		
  9372	130135	   001				.BYTE	1,1
  9373					
  9374	130136	130260				.WORD	$FNUM			;NUM FIELD
  9375	130140	   003		
  9376	130141	   002				.BYTE	3,2
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 265
		FD11 PALII[KL,SYS]	Page 13.1 	DEPOSIT C-RAM SUBROUTINE

  9377					
  9378	130142	130272				.WORD	$FVMA			;VMA FIELD
  9379	130144	   001		
  9380	130145	   002				.BYTE	1,2
  9381					
  9382	130146	130276				.WORD	$FMEM			;MEM FIELD
  9383	130150	   002		
  9384	130151	   003				.BYTE	2,3
  9385					
  9386	130152	130304				.WORD	$FCOND			;COND FIELD
  9387	130154	   002		
  9388	130155	   003				.BYTE	2,3
  9389					
  9390	130156	000000				.WORD	0			;END OF TABLE WORD
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 266
		FD11 PALII[KL,SYS]	Page 14 	DEPOSIT C-RAM SUBROUTINE

  9391					;C-RAM SECONDARY DECISION TABLES
  9392					
  9393	130160	   112		
  9394	130161	   111			$FJ:	.BYTE	74.,73.		;J00(5), J01(6)
  9395	130162	   110		
  9396	130163	   107				.BYTE	72.,71.		;J02(7), J03(8)
  9397	130164	   106		
  9398	130165	   105				.BYTE	70.,69.		;J04(9), J05(10)
  9399	130166	   104		
  9400	130167	   103				.BYTE	68.,67.		;J06(11), J07(12)
  9401	130170	   102		
  9402	130171	   101				.BYTE	66.,65.		;J08(13), J09(14)
  9403	130172	   100		
  9404	130173	   000				.BYTE	64.,0		;J10(15)
  9405					
  9406	130174	   003		
  9407	130175	   001			$FT:	.BYTE	3.,1.		;T00(76), T01(78)
  9408	130176	   000		
  9409	130177	   000				.BYTE	0,0
  9410					
  9411	130200	   053		
  9412	130201	   013			$FAR:	.BYTE	43.,11.		;ARXM SEL4(36), ARXM SEL2(68)
  9413	130202	   011		
  9414	130203	   042				.BYTE	9.,34.		;ARXM SEL1(70), ARM SEL4(45)
  9415	130204	   017		
  9416	130205	   015				.BYTE	15.,13.		;ARM SEL2(64), ARM SEL1(66)
  9417	130206	   000		
  9418	130207	   000				.BYTE	0,0
  9419					
  9420	130210	   063		
  9421	130211	   057			$FAD:	.BYTE	51.,47.		;ADB SEL2(28), ADB SEL1(32)
  9422	130212	   066		
  9423	130213	   065				.BYTE	54.,53.		;ADA DIS(25), ADA SEL2(26)
  9424	130214	   064		
  9425	130215	   005				.BYTE	52.,5.		;ADA SEL1(27), AD CRY(74)
  9426	130216	   067		
  9427	130217	   073				.BYTE	55.,59.		;AD BOOLE(24), AD SEL 8 (20)
  9428	130220	   072		
  9429	130221	   071				.BYTE	58.,57.		;AD SEL 4 (21), AD SEL 2 (22)
  9430	130222	   070		
  9431	130223	   000				.BYTE	56.,0		;AD SEL 1 (23)
  9432					
  9433	130224	   031		
  9434	130225	   033			$FBR:	.BYTE	25.,27.		;BRX LOAD(54), BR LOAD(52)
  9435	130226	   000		
  9436	130227	   000				.BYTE	0,0
  9437					
  9438	130230	   077		
  9439	130231	   000			$FMQ:	.BYTE	63.,0		;MQ SEL(16)
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 267
		FD11 PALII[KL,SYS]	Page 14.1 	DEPOSIT C-RAM SUBROUTINE

  9440					
  9441	130232	   027		
  9442	130233	   026			$FFM:	.BYTE	23.,22.		;FM ADR SEL4(56), FM ADR SEL2(57)
  9443	130234	   025		
  9444	130235	   000				.BYTE	21.,0		;FM ADR SEL1(58)
  9445					
  9446	130236	   045		
  9447	130237	   023			$FSCAD:	.BYTE	37.,19.		;SCADB SEL2(42), SCADB SEL1(60)
  9448	130240	   117		
  9449	130241	   047				.BYTE	79.,39.		;SCADA DIS(0), SCADA SEL2(40)
  9450	130242	   046		
  9451	130243	   116				.BYTE	38.,78.		;SCADA SEL1(41), SCAD 4(1)
  9452	130244	   115		
  9453	130245	   114				.BYTE	77.,76.		;SCAD 2(2), SCAD 1(3)
  9454	130246	   000		
  9455	130247	   000				.BYTE	0,0
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 268
		FD11 PALII[KL,SYS]	Page 15 	DEPOSIT C-RAM SUBROUTINE

  9456					
  9457	130250	   021		
  9458	130251	   000			$FSC:	.BYTE	17.,0		;SCM SEL 2(62)
  9459					
  9460	130252	   113		
  9461	130253	   000			$FFE:	.BYTE	75.,0		;FE LOAD(4)
  9462					
  9463	130254	   041		
  9464	130255	   040			$FSH:	.BYTE	33.,32.		;SH/ARMM SEL2(46), SH/ARMM SEL1(47)
  9465	130256	   000		
  9466	130257	   000				.BYTE	0,0
  9467					
  9468	130260	   062		
  9469	130261	   061			$FNUM:	.BYTE	50.,49.		;#00(29), #01(30)
  9470	130262	   060		
  9471	130263	   056				.BYTE	48.,46.		;#02(31), #03(33)
  9472	130264	   055		
  9473	130265	   054				.BYTE	45.,44.		;#04(34), #05(35)
  9474	130266	   052		
  9475	130267	   051				.BYTE	42.,41.		;#06(37), #07(38)
  9476	130270	   050		
  9477	130271	   000				.BYTE	40.,0		;#08(39)
  9478					
  9479	130272	   043		
  9480	130273	   007			$FVMA:	.BYTE	35.,7.		;VMA SEL 2(44), VMA SEL 1(72)
  9481	130274	   000		
  9482	130275	   000				.BYTE	0,0
  9483					
  9484	130276	   037		
  9485	130277	   036			$FMEM:	.BYTE	31.,30.		;MEM 00(48), MEM 01(49)
  9486	130300	   035		
  9487	130301	   034				.BYTE	29.,28.		;MEM 02(50), MEM 03(51)
  9488	130302	   000		
  9489	130303	   000				.BYTE	0,0
  9490					
  9491	130304	   076		
  9492	130305	   075			$FCOND:	.BYTE	62.,61.		;COND 00(17), COND 01(18)
  9493	130306	   074		
  9494	130307	   032				.BYTE	60.,26.		;COND 02(19), COND 03(53)
  9495	130310	   030		
  9496	130311	   024				.BYTE	24.,20.		;COND 04(55), COND 05(59)
  9497	130312	   000		
  9498	130313	   000				.BYTE	0,0
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 269
		KLDCP PAL[KL,SYS]	Page 5.5 	DEPOSIT C-RAM SUBROUTINE

  9499					
  9500								;Dectape
  9501					.INSRT	DTA11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 270
		DTA11 PAL[KL,SYS]	Page 1 	DEPOSIT C-RAM SUBROUTINE

  9502				COMMENT ⊗   VALID 00027 PAGES
  9503				C REC  PAGE   DESCRIPTION
  9504				C00001 00001
  9505				C00003 00002	.SBTTL	PROGRAM FILE LOADER, 4-SEPT-75
  9506				C00008 00003	PROCESS FILENAME.EXT FROM INPUT BUFFER
  9507				C00011 00004	DECTAPE/RP04/FLOPPY LOADER START
  9508				C00013 00005	LLDONE:	MOV	R4,DVCNT	RESAVE POINTERS
  9509				C00015 00006	LDPRO2:	JMP	ACTLDC		LOAD TYPE ERROR
  9510				C00017 00007	LDCKSM:	TST	LDOCTF		LOADING OCTAL ?
  9511				C00019 00008	LOAD DONE ROUTINE   PDP11 LOAD ROUTINE
  9512				C00021 00009	3$:	TST	VERIFY
  9513				C00022 00010	PDP-11 BINARY LOAD ROUTINE
  9514				C00024 00011	3$:	PUSH	R0
  9515				C00025 00012	KL10 LOAD D-RAM ROUTINE
  9516				C00027 00013	KL10 C-RAM ZERO
  9517				C00031 00014	2$:	MOV	LDADR,R0	SELECT C-RAM STARTING ADDRESS
  9518				C00032 00015	LOAD TEN CORE ZERO
  9519				C00034 00016	LOAD TEN DATA
  9520				C00036 00017	LD10VR:	BMI	LD10ER		N-BIT SET DEPOSIT FAILED
  9521				C00037 00018	DEVICE FILE DIRECTORY LOOKUP
  9522				C00039 00019	1$:	MOV	(R0)+,DIRST0	STORE RAD50 NAME
  9523				C00041 00020	DECTAPE/FLOPPY DIRECTORY ROUTINE
  9524				C00042 00021	READ DEVICE FRAME SUBROUTINE
  9525				C00044 00022	DVEOF:	TST	LDCNTL		EOF, PRINTING A HELP FILE ?
  9526				C00045 00023	RAD50 UNPACK SUBROUTINE
  9527				C00047 00024	DECTAPE READ/WRITE FILE ROUTINES
  9528				C00048 00025	DECTAPE DEVICE READ/WRITE ROUTINE
  9529				C00050 00026	DTSRA:	ADD	#3,@#TCDT	+3 TO TCDT
  9530				C00053 00027	.SBTTL	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE
  9531				C00055 ENDMK
  9532					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 271
		DTA11 PAL[KL,SYS]	Page 2 	PROGRAM FILE LOADER, 4-SEPT-75

  9533					.SBTTL	PROGRAM FILE LOADER, 4-SEPT-75
  9534					
  9535					;LOAD CONTROL FLAG WORD "LDCNTL"
  9536					;BIT15=1 IS HELP, PRINT FILE READ
  9537					;WORD = 0	.A10, PDP-10 LOAD
  9538					;	1	.A11, PDP-11 LOAD
  9539					;	2	.RAM, KL10 C-RAM ZERO
  9540					;	3	.RAM, KL10 C-RAM LOAD
  9541					;	4	.RAM, KL10 D-RAM LOAD
  9542					;	5	.BIN, PDP-11 BIN LOAD
  9543					;	6	.D10, PDP-11 LOAD DSKDMP BOOTSTRAP .D10 FILE
  9544					;ACT10		.BIN LOADED AS .A11
  9545					;		.SAV LOADED AS .A10
  9546					
  9547					;PROGRAM DETERMINATION & LOAD CONTROL INITIALIZATION
  9548					
  9549	130314	104206			DVLOAD:	NAMEXT			;SETUP NAME.EXT
  9550	130316	005700				TST	R0		;ANY EXT ?
  9551	130320	001043				BNE	4$		;YES
  9552	130322	105737	147620			TSTB	JFILEF		;DOING "J" COMMAND ?
  9553	130326	001405				BEQ	50$		;NO
  9554	130330	012704	046503			MOV	#"CM,R4		;YES, DEFAULT EXT IS "CMD"
  9555	130334	012705	020104			MOV	#"D ,R5
  9556	130340	000427				BR	52$
  9557					
  9558	130342	105737	147624		50$:	TSTB	IFILEF		;DOING "I" COMMAND ?
  9559	130346	001405				BEQ	51$		;NO
  9560	130350	012704	041503			MOV	#"CC,R4		;YES, DEFAULT EXT IS "CCL"
  9561	130354	012705	020114			MOV	#"L ,R5
  9562	130360	000417				BR	52$
  9563					
  9564	130362	013704	150732		51$:	MOV	LDOVRD,R4	;ANY LOAD EXT OVERRIDE ?
  9565	130366	003403				BLE	53$		;IF NOT, USE "A10"
  9566	130370	022704	000007			CMP	#7,R4
  9567	130374	002002				BGE	54$		;BRANCH UNLESS OUT OF BOUNDS
  9568	130376	012704	000001		53$:	MOV	#1,R4
  9569	130402	005304			54$:	DEC	R4		;RESULT OF 0=A10,1=A11,2,3,4=RAM,5=BIN,6=D10(DSKDMP)
  9570	130404	006304				ASL	R4		;DOUBLE R4 (SINCE WE NEED 4 BYTES PER ENTRY)
  9571	130406	006304				ASL	R4		;DOUBLE AGAIN
  9572	130410	016405	130646			MOV	DEFEXT+2(R4),R5	;SECOND 2 CHARACTERS OF DEFAULT EXT.
  9573	130414	016404	130644			MOV	DEFEXT(R4),R4
  9574	130420	010437	151166		52$:	MOV	R4,EXTBF
  9575	130424	010537	151170			MOV	R5,EXTBF+2
  9576	130430	012703	150734		4$:	MOV	#LDCNTL,R3
  9577	130434	005713				TST	(R3)		;IS THIS "HELP"
  9578	130436	100451				BMI	12$		;BRANCH IF "HELP".  NO DEFAULT EXTENSION.
  9579	130440	012704	147627			MOV	#TEMP+1,R4
  9580	130444	012705	151170			MOV	#EXTBF+2,R5
  9581	130450	111514				MOVB	(R5),(R4)	;MAKE A WORD OUT OF 2ND & 3RD CHAR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 272
		DTA11 PAL[KL,SYS]	Page 2.1 	PROGRAM FILE LOADER, 4-SEPT-75

  9582	130452	114544				MOVB	-(R5),-(R4)
  9583	130454	122745	000101			CMPB	#'A,-(R5)	;IS FIRST CHAR AN "A" ?
  9584	130460	001420				BEQ	6$		;BR IF YES
  9585	130462	122715	000102			CMPB	#'B,(R5)	;IS FIRST CHAR A "B" ?
  9586	130466	001446				BEQ	14$		;BR IF YES
  9587	130470	122715	000123			CMPB	#'S,(R5)	;IS FIRST CHAR AN "S" ?
  9588	130474	001451				BEQ	16$		;BR IF YES
  9589	130476	122715	000122			CMPB	#'R,(R5)	;IS FIRST CHAR AN "R" ?
  9590	130502	001422				BEQ	66$		;BR IF YES
  9591	130504	122715	000104			CMPB	#'D,(R5)	;IS FIRST CHAR A "D" ?
  9592	130510	001447				BEQ	21$
  9593	130512	005737	150732		5$:	TST	LDOVRD		;ANY LOAD EXT OVERRIDE ?
  9594	130516	001021				BNE	12$		;YES
  9595	130520	000566				BR	$$$NAM		;NAME.EXT ERR
  9596					
  9597	130522	022714	030061		6$:	CMP	#"10,(R4)	;HERE IS IF FIRST CHARACTER IS AN "A"
  9598	130526	001406				BEQ	7$		;BR IF ".A10"
  9599	130530	022714	030461			CMP	#"11,(R4)
  9600	130534	001366				BNE	5$		;BR IF NOT "A11"
  9601	130536	012713	000001			MOV	#1,(R3)		;"A11"
  9602	130542	000407				BR	12$
  9603					
  9604	130544	005013			7$:	CLR	(R3)		;A10.  SETUP LOAD CONTROL
  9605	130546	000405				BR	12$
  9606					
  9607	130550	022714	046501		66$:	CMP	#"AM,(R4)	;"R" SEEN
  9608	130554	001356				BNE	5$		;BR IF NOT ".RAM"
  9609	130556	012713	000002			MOV	#2,(R3)		;"RAM"
  9610	130562	005737	150732		12$:	TST	LDOVRD		;ANY LOAD EXT OVERRIDE ?
  9611	130566	001404				BEQ	20$		;NO
  9612	130570	013700	150732			MOV	LDOVRD,R0	;SET LOAD CONTROL ACCORDINGLY
  9613	130574	005300				DEC	R0
  9614	130576	010013				MOV	R0,(R3)
  9615	130600	000137	133350		20$:	JMP	DEVFIL		;GO GET FILE & LOAD
  9616					
  9617	130604	022714	047111		14$:	CMP	#"IN,(R4)	;IS EXTENSION ".BIN" ?
  9618	130610	001340				BNE	5$		;BR IF NO
  9619	130612	012713	000005			MOV	#5,(R3)		;YES, SET LOAD CONTROL
  9620	130616	000761				BR	12$
  9621					
  9622	130620	022714	053101		16$:	CMP	#"AV,(R4)	;IS EXTENSION ".SAV" ?
  9623	130624	001747				BEQ	7$		;YES, ACT10 TREATS AS ".A10"
  9624	130626	000731				BR	5$
  9625					
  9626	130630	022714	030061		21$:	CMP	#"10,(R4)	;IS EXTENSION ".D10" ?
  9627	130634	001326				BNE	5$		;NO, GO REPORT ERROR
  9628	130636	012713	000006			MOV	#6,(R3)		;YES, SET LOAD CONTROL
  9629	130642	000747				BR	12$
  9630					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 273
		DTA11 PAL[KL,SYS]	Page 2.2 	PROGRAM FILE LOADER, 4-SEPT-75

  9631	130644	   101		
  9632	130645	   061		
  9633	130646	   060		
  9634	130647	   040		
  9635					DEFEXT:	.ASCII /A10 /
  9636	130650	   101		
  9637	130651	   061		
  9638	130652	   061		
  9639	130653	   040		
  9640						.ASCII /A11 /
  9641	130654	   122		
  9642	130655	   101		
  9643	130656	   115		
  9644	130657	   040		
  9645						.ASCII /RAM /
  9646	130660	   122		
  9647	130661	   101		
  9648	130662	   115		
  9649	130663	   040		
  9650						.ASCII /RAM /
  9651	130664	   122		
  9652	130665	   101		
  9653	130666	   115		
  9654	130667	   040		
  9655						.ASCII /RAM /
  9656	130670	   102		
  9657	130671	   111		
  9658	130672	   116		
  9659	130673	   040		
  9660						.ASCII /BIN /
  9661	130674	   104		
  9662	130675	   061		
  9663	130676	   060		
  9664	130677	   040		
  9665						.ASCII /D10 /		;FOR DSKDMP BOOT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 274
		DTA11 PAL[KL,SYS]	Page 3 	PROGRAM FILE LOADER, 4-SEPT-75

  9666					;PROCESS FILENAME.EXT FROM INPUT BUFFER
  9667					
  9668	130700	012700	151160		$NAMEXT:MOV	#NAMBF,R0	;CLEAR NAME LOOKUP BUFFER
  9669	130704	012701	020040			MOV	#20040,R1	;TO SPACES
  9670	130710	012702	000005			MOV	#5,R2
  9671	130714	010120			70$:	MOV	R1,(R0)+	;UP TO 9 CHARS
  9672	130716	005302				DEC	R2
  9673	130720	003375				BGT	70$
  9674					
  9675	130722	012702	151160			MOV	#NAMBF,R2	;LOOKUP NAME
  9676	130726	012701	000007			MOV	#7,R1		;MAXIMUM OF 6 CHARS IN NAME
  9677	130732	104016				TTISDL
  9678	130734	103402				BCS	99$		;LETTER, ALREADY IN R0
  9679	130736	104005			1$:	TTICHR			;GET CHAR FROM TTY BUFFER
  9680	130740	103456				BCS	5$
  9681	130742	122700	000056		99$:	CMPB	#'.,R0
  9682	130746	001415				BEQ	2$		;BR IF PERIOD, NAME.EXT SEPARATOR
  9683	130750	122700	000033			CMPB	#33,R0
  9684	130754	001435				BEQ	97$		;ALTMODE, SELF START
  9685	130756	122700	000015			CMPB	#15,R0
  9686	130762	001442				BEQ	96$		;CR, NO EXTENSION
  9687	130764	122700	000040			CMPB	#SPACE,R0	;IF SPACE, NO EXT
  9688	130770	001437				BEQ	96$
  9689	130772	005301				DEC	R1
  9690	130774	001440				BEQ	5$		;BR IF MORE THAN 6 CHARS
  9691	130776	110022				MOVB	R0,(R2)+	;STORE CHAR
  9692	131000	000756				BR	1$
  9693					
  9694	131002	012702	151166		2$:	MOV	#EXTBF,R2	;GET EXTENSION
  9695	131006	012701	000004			MOV	#4,R1
  9696	131012	104005			3$:	TTICHR
  9697	131014	103430				BCS	5$
  9698	131016	122700	000033			CMPB	#33,R0
  9699	131022	001415				BEQ	13$		;BR IF ALTMODE
  9700	131024	122700	000015			CMPB	#15,R0
  9701	131030	001414				BEQ	98$		;BR IF CR
  9702	131032	122700	000040			CMPB	#SPACE,R0	;BR IF SPACE
  9703	131036	001411				BEQ	98$
  9704	131040	005301				DEC	R1
  9705	131042	001415				BEQ	5$		;BR IF MORE THAN 3 CHARS
  9706	131044	110022				MOVB	R0,(R2)+	;STORE CHAR
  9707	131046	000761				BR	3$
  9708					
  9709	131050	005137	150726		97$:	COM	SRTFLG		;SET SELF START FLAG
  9710	131054	000405				BR	96$
  9711					
  9712	131056	005137	150726		13$:	COM	SRTFLG
  9713					
  9714	131062	022701	000004		98$:	CMP	#4,R1
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 275
		DTA11 PAL[KL,SYS]	Page 3.1 	PROGRAM FILE LOADER, 4-SEPT-75

  9715	131066	001001				BNE	10$
  9716	131070	005000			96$:	CLR	R0
  9717					10$:	EXIT
  9718	131072	000137	124064			  JMP	$EXIT
  9719					
  9720		131076			$$$NAM=.
  9721	131076	104025			5$:	$PMSG			;NAME.EXT ERR
  9722	131100	131106				  $$NAM
  9723	131102	000137	100004			JMP	$CNTLC
  9724					
  9725	131106	   116		
  9726	131107	   101		
  9727	131110	   115		
  9728	131111	   105		
  9729	131112	   056		
  9730	131113	   105		
  9731	131114	   130		
  9732	131115	   124		
  9733	131116	   040		
  9734	131117	   105		
  9735	131120	   122		
  9736	131121	   122		
  9737	131122	   000		
  9738					$$NAM:	.ASCIZ	/NAME.EXT ERR/
  9739		131124			.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 276
		DTA11 PAL[KL,SYS]	Page 4 	PROGRAM FILE LOADER, 4-SEPT-75

  9740					;DECTAPE/RP04/FLOPPY LOADER START
  9741					
  9742	131124	022737	000005	150734	DTRPLD:	CMP	#5,LDCNTL	;PDP-11 .BIN FILE LOAD ?
  9743	131132	001002				BNE	LLD1
  9744	131134	000137	132242			JMP	LDBIN
  9745					
  9746	131140	104160			LLD1:	DVDATA			;LOAD FIRST BUFFER
  9747	131142	103002				 BCC	LLD2
  9748	131144	000137	134066			JMP	DVEOF		;EOF
  9749					
  9750					LLD2:
  9751					.IF DF MONASB
  9752						TST	DEVTYP
  9753						BPL	1$
  9754						JMP	ACTLD2		;ACT10 PROCESS
  9755					.ENDC
  9756	131150	012705	150500		1$:	MOV	#$INBUF,R5	;SET UP START OF CHAR BUFFER
  9757	131154	010537	150716			MOV	R5,$INPTC
  9758					
  9759	131160	013704	151126		LLD3:	MOV	DVCNT,R4	;SETUP DEVICE BYTE COUNTER
  9760	131164	013703	151130			MOV	DVADR,R3	;SETUP DEVICE DATA BLOCK ADDRESS
  9761					
  9762	131170	005704			LLD4:	TST	R4		;ANY DATA REMAINING ?
  9763	131172	003004				BGT	2$		;YES
  9764					
  9765	131174	104160				DVDATA			;NO, READ NEXT DEVICE BLOCK
  9766	131176	103370				 BCC	LLD3
  9767	131200	000137	134066			JMP	DVEOF		;END OF FILE ?
  9768					
  9769	131204	112300			2$:	MOVB	(R3)+,R0	;GET FRAME, ONE 7 BIT CHAR
  9770	131206	005304				DEC	R4		;COUNT IT
  9771	131210	042700	177600			BIC	#177600,R0
  9772	131214	005700				TST	R0		;IS FRAME A NULL ?
  9773	131216	001764				BEQ	LLD4		;BR IF YES, DON'T STORE
  9774	131220	110025				MOVB	R0,(R5)+	;STORE IN BUFFER
  9775	131222	020527	150714			CMP	R5,#$INBUF+140.
  9776	131226	003402				BLE	1$		;BR IF BUFFER DIDN'T OVERFLOW
  9777	131230	000137	131762			JMP	$LINERR		;REPORT BUFFER OVERFLOW
  9778	131234	022700	000012		1$:	CMP	#12,R0		;IS CHAR A LINE FEED ?
  9779	131240	001401				BEQ	LLDONE		;BR IF LINE DONE
  9780	131242	000752				BR	LLD4		;LOOP TILL LF FOUND
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 277
		DTA11 PAL[KL,SYS]	Page 5 	PROGRAM FILE LOADER, 4-SEPT-75

  9781	131244	010437	151126		LLDONE:	MOV	R4,DVCNT	;RESAVE POINTERS
  9782	131250	010337	151130			MOV	R3,DVADR
  9783	131254	105015				CLRB	(R5)		;STORE A NULL TO END STRING
  9784	131256	010537	150720			MOV	R5,$INPTR
  9785	131262	005237	150724			INC	DEVLC		;COUNT LINE
  9786	131266	013737	150724	177570		MOV	DEVLC,SWR	;DISPLAY
  9787	131274	005737	150734			TST	LDCNTL		;IS HELP FLAG SET ?
  9788	131300	100002				BPL	LDPROC		;BR IF NO
  9789	131302	000137	140316			JMP	DAHLP		;DTA/ACT HELP
  9790					
  9791	131306	005037	150736		LDPROC:	CLR	LDOCTF		;CLEAR OCTAL LOAD FLAG
  9792	131312	005037	150730			CLR	LDZBLK
  9793	131316	013701	150734			MOV	LDCNTL,R1	;GET LOAD CONTROL
  9794	131322	013705	150716			MOV	$INPTC,R5	;SETUP INPUT POINTER
  9795	131326	112500				MOVB	(R5)+,R0	;GET FIRST CHAR FROM FILE
  9796	131330	122700	000073			CMPB	#';,R0		;IS FIRST CHAR A SEMICOLON ?
  9797	131334	001420				BEQ	LDPRO1		;YES, PROCESS COMMENT LINE
  9798	131336	126100	131672			CMPB	LDLTR(R1),R0	;DOES 1ST CHAR MATCH LOAD TYPE ?
  9799	131342	001443				BEQ	LDPRO3		;YES
  9800	131344	023727	150734	000006		CMP	LDCNTL,#6	;D10 FILES ACT LIKE A10
  9801	131352	001403				BEQ	1$
  9802	131354	005737	150734			TST	LDCNTL		;IS THIS .A10 FILE ?
  9803	131360	001032				BNE	LDPRO2		;NO, ERROR
  9804	131362	122700	000132		1$:	CMPB	#'Z,R0		;YES, IS FIRST CHAR A "Z" ?
  9805	131366	001027				BNE	LDPRO2		;NO, ERROR
  9806	131370	005137	150730			COM	LDZBLK		;YES, SET CORE ZERO FLAG
  9807	131374	000426				BR	LDPRO3
  9808					
  9809	131376	005737	150724		LDPRO1:	TST	DEVLC		;COMMENT, IS THIS FIRST LINE ?
  9810	131402	001262				BNE	LLD2		;NO
  9811						PUSH	PCMDNF		;SAVE PGM CMD NO PRINT FLAG
  9812	131410	104057				SWITCH
  9813	131412	030027	000001			BIT	R0,#CHAIN	;IS CHAIN SWITCH SET ?
  9814	131416	001403				BEQ	1$		;NO
  9815	131420	012737	777777	152212		MOV	#-1,PCMDNF	;YES, PREVENT FILE ID PRINTOUT
  9816					
  9817	131426	112501			1$:	MOVB	(R5)+,R1	;PUT FILE ID LINE IN OUTPUT BUFFER
  9818	131430	001402				BEQ	2$		;NULL, DONE
  9819	131432	104154				PLDBUF
  9820	131434	000774				BR	1$
  9821					2$:	POP	PCMDNF		;RESTORE FLAG
  9822	131442	104215				PNTRST			;RESET OUTPUT POINTERS ANYWAY
  9823	131444	000641				BR	LLD2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 278
		DTA11 PAL[KL,SYS]	Page 6 	PROGRAM FILE LOADER, 4-SEPT-75

  9824	131446	000137	140522		LDPRO2:	JMP	ACTLDC		;LOAD TYPE ERROR
  9825					
  9826	131452	112500			LDPRO3:	MOVB	(R5)+,R0	;GET 2ND CHAR
  9827	131454	122700	000117			CMPB	#'O,R0		;IS IT AN O ?
  9828	131460	001445				BEQ	LDOCT		;YES, OCTAL DATA FORMAT LOAD
  9829	131462	122700	000040			CMPB	#40,R0		;IS IT A SPACE ?
  9830	131466	001367				BNE	LDPRO2		;BR IF NO
  9831					
  9832	131470	012701	150740		LDCLR:	MOV	#LDCNT,R1	;SETUP CONVERTED STORAGE ADDRESS
  9833	131474	005002			LDCNV:	CLR	R2		;CLEAR WORD FORMER
  9834	131476	112500			1$:	MOVB	(R5)+,R0	;GET CHAR
  9835	131500	022700	000015			CMP	#15,R0		;IS IT A CR ?
  9836	131504	001774				BEQ	1$		;YES, IGNORE
  9837	131506	022700	000012			CMP	#12,R0		;IS IT A LF ?
  9838	131512	001435				BEQ	LDEOL		;YES, END OF LINE
  9839	131514	022700	000054			CMP	#54,R0		;IS IT A COMMA ?
  9840	131520	001415				BEQ	2$		;YES, GO STORE WORD
  9841	131522	005737	150736			TST	LDOCTF		;LOADING OCTAL ?
  9842	131526	001014				BNE	3$		;YES
  9843						SL	R2,6		;SHIFT WORD FORMER LEFT 6
  9844	131544	042700	000100			BIC	#100,R0		;CLEAR ASCIIZED BIT
  9845	131550	050002			4$:	BIS	R0,R2		;INSERT NEW OIT
  9846	131552	000751				BR	1$		;LOOP TILL WORD FORMED
  9847					
  9848	131554	010221			2$:	MOV	R2,(R1)+	;STORE 16 BIT WORD
  9849	131556	000746				BR	LDCNV		;GO DO NEXT
  9850					
  9851					3$:	SL	R2,3		;OCTAL LOAD
  9852	131566	042700	177770			BIC	#177770,R0	;CLEAR ALL BUT NUMBER PART
  9853	131572	000766				BR	4$
  9854					
  9855	131574	005137	150736		LDOCT:	COM	LDOCTF		;OCTAL LOAD, SET FLAG
  9856	131600	000733				BR	LDCLR
  9857					
  9858	131602	000137	140536		LDERR:	JMP	ACTLDF		;LOAD ERROR
  9859					
  9860	131606	010211			LDEOL:	MOV	R2,(R1)		;STORE CHECKSUM
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 279
		DTA11 PAL[KL,SYS]	Page 7 	PROGRAM FILE LOADER, 4-SEPT-75

  9861	131610	005737	150736		LDCKSM:	TST	LDOCTF		;LOADING OCTAL ?
  9862	131614	001012				BNE	2$		;YES, NO CHECKSUM
  9863	131616	012702	150740			MOV	#LDCNT,R2	;CHECKSUM LOAD STORAGE
  9864	131622	005000				CLR	R0
  9865	131624	062200			1$:	ADD	(R2)+,R0
  9866	131626	020201				CMP	R2,R1
  9867	131630	003775				BLE	1$
  9868	131632	005700				TST	R0		;IS CHECKSUM = 0 ?
  9869	131634	001402				BEQ	2$		;BR IF 0
  9870	131636	000137	140530			JMP	ACTBCK		;BAD CHECKSUM
  9871					
  9872	131642	013700	150734		2$:	MOV	LDCNTL,R0	;DISPATCH TO PROPER LOAD ROUTINE
  9873						SL	R0,1		;DETERMINED FROM LDCNTL WORD
  9874	131650	000170	131654			JMP	@LDTYPE(R0)
  9875					
  9876	131654	133052			LDTYPE:	LDTEN			;.A10, LOAD TEN
  9877	131656	131776				LDELVN			;.A11, LOAD ELEVEN
  9878	131660	132610				LDCZRO			;.RAM, ZERO C-RAM
  9879	131662	132642				LDCRAM			;.RAM, LOAD C-RAM
  9880	131664	132452				LDDRAM			;.RAM, LOAD D-RAM
  9881	131666	000000				0			;.BIN, DETECTED IN LINE
  9882	131670	135266				LDBOOT			;.D10, LOAD DSKDMP BOOT INTO 11 (SAME FORMAT AS A10)
  9883					
  9884	131672	   124		
  9885	131673	   105		
  9886	131674	   132		
  9887	131675	   103		
  9888	131676	   104		
  9889	131677	   040		
  9890	131700	   124		
  9891					LDLTR:	.ASCII	/TEZCD T/
  9892					
  9893	131701	   061		
  9894	131702	   061		
  9895	131703	   040		
  9896	131704	   105		
  9897	131705	   122		
  9898	131706	   122		
  9899	131707	   054		
  9900	131710	   101		
  9901	131711	   104		
  9902	131712	   122		
  9903	131713	   075		
  9904	131714	   000		
  9905					$$LD11:	.ASCIZ	/11 ERR,ADR=/
  9906	131715	   103		
  9907	131716	   117		
  9908	131717	   122		
  9909	131720	   075		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 280
		DTA11 PAL[KL,SYS]	Page 7.1 	PROGRAM FILE LOADER, 4-SEPT-75

  9910	131721	   000		
  9911					$$COR:	.ASCIZ	/COR=/
  9912	131722	   101		
  9913	131723	   103		
  9914	131724	   124		
  9915	131725	   075		
  9916	131726	   000		
  9917					$$ACT:	.ASCIZ	/ACT=/
  9918	131727	   134		
  9919	131730	   122		
  9920	131731	   101		
  9921	131732	   115		
  9922	131733	   040		
  9923	131734	   105		
  9924	131735	   122		
  9925	131736	   122		
  9926	131737	   054		
  9927	131740	   103		
  9928	131741	   117		
  9929	131742	   122		
  9930	131743	   075		
  9931	131744	   000		
  9932					$$RAM:	.ASCIZ	/\RAM ERR,COR=/
  9933	131745	   134		
  9934	131746	   061		
  9935	131747	   060		
  9936	131750	   040		
  9937	131751	   105		
  9938	131752	   122		
  9939	131753	   122		
  9940	131754	   054		
  9941	131755	   101		
  9942	131756	   104		
  9943	131757	   122		
  9944	131760	   075		
  9945	131761	   000		
  9946					$$TEN:	.ASCIZ	/\10 ERR,ADR=/
  9947		131762				.EVEN
  9948					
  9949					$LINERR:PMSG	<?LINE TOO LONG>
  9950	131762	104025				  $PMSG
  9951	131764	146645				  $$CLIT
  9952	131766	000137	100004			JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 281
		DTA11 PAL[KL,SYS]	Page 8 	PROGRAM FILE LOADER, 4-SEPT-75

  9953					;LOAD DONE ROUTINE   PDP11 LOAD ROUTINE
  9954					
  9955					LDDONE:
  9956					.IF DF MONASB
  9957						TST	DEVTYP		;LOAD DONE
  9958						BMI	1$		;BR IF ACT10 MODE
  9959					.ENDC
  9960	131772	000137	140474			JMP	DADONE
  9961					
  9962					.LIF DF MONASB
  9963					1$:	JMP	ACTDON		;ACT10 PROCESS
  9964					
  9965					;PDP-11 CORE LOAD ROUTINE
  9966					
  9967	131776	013700	150740		LDELVN:	MOV	LDCNT,R0	;GET LOAD WORD COUNT
  9968	132002	001510				BEQ	2$		;IF 0, THIS IS TRANSFER BLOCK
  9969	132004	012702	150744			MOV	#LDATA,R2	;SETUP DATA PICKUP POINTER
  9970	132010	013701	150742			MOV	LDADR,R1	;GET LOAD MEMORY ADDRESS
  9971	132014	032701	000001			BIT	#1,R1		;LOAD WORD OR BYTE ?
  9972	132020	001034				BNE	3$		;BYTE LOAD
  9973					
  9974	132022	005737	147730		1$:	TST	VERIFY
  9975	132026	001005				BNE	11$
  9976	132030	012221			19$:	MOV	(R2)+,(R1)+	;MOVE WORD FROM STOR TO MEMORY
  9977	132032	005300			13$:	DEC	R0		;DECREMENT WORD COUNT
  9978	132034	003372				BGT	1$		;LOOP TILL ALL WORDS MOVED
  9979	132036	000137	131150		18$:	JMP	LLD2		;GO DO NEXT LOAD LINE
  9980					
  9981	132042	021211			11$:	CMP	(R2),(R1)	;COMPARE CURRENT AGAINST FILE
  9982	132044	001417				BEQ	12$
  9983						PUSH	R0
  9984	132050	104025				$PMSG
  9985	132052	131701				$$LD11			;"11 ERR,ADR="
  9986	132054	010100				MOV	R1,R0
  9987	132056	104035				PNTOCT
  9988					
  9989	132060	104025				$PMSG
  9990	132062	131715				$$COR			;"COR="
  9991	132064	011200				MOV	(R2),R0
  9992	132066	104035				PNTOCT
  9993					
  9994	132070	104025				$PMSG
  9995	132072	131722				$$ACT			;"ACT="
  9996	132074	011100				MOV	(R1),R0
  9997	132076	104035				PNTOCT
  9998	132100	104031				PCRLF
  9999						POP	R0
 10000					
 10001	132104	005722			12$:	TST	(R2)+
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 282
		DTA11 PAL[KL,SYS]	Page 8.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10002	132106	005721				TST	(R1)+
 10003	132110	000750				BR	13$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 283
		DTA11 PAL[KL,SYS]	Page 9 	PROGRAM FILE LOADER, 4-SEPT-75

 10004	132112	005737	147730		3$:	TST	VERIFY
 10005	132116	001005				BNE	31$
 10006					
 10007	132120	112221			39$:	MOVB	(R2)+,(R1)+	;ODD ADDRESS, BYTE LOAD
 10008	132122	112221				MOVB	(R2)+,(R1)+	;2 BYTES PER WORD
 10009	132124	005300			38$:	DEC	R0		;DECREMENT WORD COUNT
 10010	132126	003371				BGT	3$		;LOOP TILL ALL BYTES MOVED
 10011	132130	000742				BR	18$		;GO ON TO NEXT
 10012					
 10013					
 10014	132132	005005			31$:	CLR	R5
 10015					32$:	PUSH	R0
 10016	132136	121211				CMPB	(R2),(R1)
 10017	132140	001422				BEQ	33$
 10018					
 10019	132142	104025				$PMSG
 10020	132144	131701				$$LD11			;"11 ERR,ADR="
 10021	132146	010100				MOV	R1,R0
 10022	132150	104035				PNTOCT
 10023					
 10024	132152	104025				$PMSG
 10025	132154	131715				$$COR			;"COR="
 10026	132156	111200				MOVB	(R2),R0
 10027	132160	042700	177400			BIC	#177400,R0
 10028	132164	104036				PNTOCS
 10029					
 10030	132166	104032				PSPACE
 10031	132170	104025				$PMSG
 10032	132172	131722				$$ACT			;"ACT="
 10033	132174	111100				MOVB	(R1),R0
 10034	132176	042700	177400			BIC	#177400,R0
 10035	132202	104036				PNTOCS
 10036	132204	104031				PCRLF
 10037					33$:	POP	R0
 10038	132210	005202				INC	R2
 10039	132212	005201				INC	R1
 10040	132214	005705				TST	R5
 10041	132216	001342				BNE	38$
 10042	132220	005205				INC	R5
 10043	132222	000744				BR	32$
 10044					
 10045	132224	013700	150742		2$:	MOV	LDADR,R0
 10046	132230	010037	157204		LD11DN:	MOV	R0,PGOADR
 10047	132234	005037	157202			CLR	PGOCTL
 10048	132240	000654				BR	LDDONE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 284
		DTA11 PAL[KL,SYS]	Page 10 	PROGRAM FILE LOADER, 4-SEPT-75

 10049					;PDP-11 BINARY LOAD ROUTINE
 10050					
 10051	132242	104160			LDBIN:	DVDATA			;LOAD DEVICE BUFFER
 10052	132244	005037	151070		LDBIN1:	CLR	$CKS11		;INIT CHECKSUM
 10053	132250	104163				DVFRAM			;READ FRAME
 10054	132252	105300				DECB	R0		;CHECK FOR BLOCK START
 10055	132254	001373				BNE	LDBIN1		;NOT YET
 10056	132256	104163				DVFRAM			;READ ANOTHER FRAME
 10057					
 10058	132260	104164				DVWRD			;GET FULL BYTE COUNT
 10059	132262	010037	151064			MOV	R0,LBC
 10060	132266	162737	000006	151064		SUB	#6,LBC
 10061	132274	001456				BEQ	LJMP		;BYTE COUNT OF 6 IS XFER BLOCK
 10062	132276	104164				DVWRD			;GET LOAD ADDRESS
 10063	132300	010005				MOV	R0,R5		;STORE LOAD ADDRESS
 10064					
 10065	132302	104163			LDBIN2:	DVFRAM			;READ DATA FRAME
 10066	132304	005337	151064			DEC	LBC
 10067	132310	002007				BGE	LDBIN3		;BR IF MORE DATA REMAINS 
 10068	132312	105737	151070			TSTB	$CKS11		;CORRECT CHECKSUM ?
 10069	132316	001752				BEQ	LDBIN1		;BR IF GOOD CHECKSUM
 10070					LDBINE:	PMSG	<\CKSUM ERR>
 10071	132320	104025				  $PMSG
 10072	132322	146664				  $$CLIT
 10073	132324	000137	100004		$LDBNE:	JMP	$CNTLC
 10074					
 10075	132330	005737	147730		LDBIN3:	TST	VERIFY
 10076	132334	001010				BNE	1$
 10077	132336	020527	100000			CMP	R5,#PRGSRT	;TRYING TO LOAD INTO KLDCP ?
 10078	132342	103403				BLO	10$		;NO
 10079						PMSG	<\ADR ERR>
 10080	132344	104025				  $PMSG
 10081	132346	146677				  $$CLIT
 10082	132350	000765				BR	$LDBNE		;YES, BAD !!
 10083	132352	110025			10$:	MOVB	R0,(R5)+	;STORE DATA 1 BYTE AT A TIME
 10084	132354	000752				BR	LDBIN2		;LOOP
 10085					
 10086	132356	120015			1$:	CMPB	R0,(R5)
 10087	132360	001002				BNE	3$
 10088	132362	005205			2$:	INC	R5
 10089	132364	000746				BR	LDBIN2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 285
		DTA11 PAL[KL,SYS]	Page 11 	PROGRAM FILE LOADER, 4-SEPT-75

 10090					3$:	PUSH	R0
 10091	132370	104025				$PMSG
 10092	132372	131701				$$LD11			;"11 ERR,ADR="
 10093					
 10094	132374	010500				MOV	R5,R0
 10095	132376	104035				PNTOCT
 10096					
 10097	132400	104025				$PMSG
 10098	132402	131715				$$COR			;"COR="
 10099						POP	R0
 10100	132406	104036				PNTOCS
 10101					
 10102	132410	104032				PSPACE
 10103	132412	104025				$PMSG
 10104	132414	131722				$$ACT			;"ACT="
 10105	132416	111500				MOVB	(R5),R0
 10106	132420	042700	177400			BIC	#177400,R0
 10107	132424	104036				PNTOCS
 10108	132426	104031				PCRLF
 10109	132430	000754				BR	2$
 10110					
 10111	132432	104164			LJMP:	DVWRD			;GET POSSIBLE XFER ADDRESS
 10112						PUSH	R0
 10113	132436	104163				DVFRAM
 10114	132440	105737	151070			TSTB	$CKS11		;CORRECT CHECKSUM ?
 10115	132444	001325				BNE	LDBINE		;BR IF BAD
 10116						POP	R0		;SETUP START ADDRESS
 10117	132450	000667				BR	LD11DN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 286
		DTA11 PAL[KL,SYS]	Page 12 	PROGRAM FILE LOADER, 4-SEPT-75

 10118					;KL10 LOAD D-RAM ROUTINE
 10119					
 10120					;CALLS "WDRAM" WITH R0 = D-RAM ADDRESS
 10121					;		    R1 = LOAD DATA ADDRESS
 10122					
 10123	132452	013702	150740		LDDRAM:	MOV	LDCNT,R2	;GET LOAD WORD COUNT
 10124	132456	001437				BEQ	2$		;WC = 0, TRANSFER BLOCK
 10125	132460	013703	150742			MOV	LDADR,R3	;SETUP D-RAM ADDRESS
 10126	132464	012704	150744			MOV	#LDATA,R4	;DATA PICKUP ADDRESS
 10127					
 10128	132470	010300			1$:	MOV	R3,R0		;D-RAM ADDRESS TO R0
 10129	132472	010401				MOV	R4,R1		;DATA ADDRESS TO R1
 10130					
 10131	132474	005737	147730			TST	VERIFY
 10132	132500	001001				BNE	11$		;VERIFY D-RAM
 10133	132502	104127				WDRAM			;WRITE D-RAM
 10134					
 10135	132504	010300			11$:	MOV	R3,R0
 10136	132506	104126				RDRAM			;READ D-RAM
 10137	132510	010005				MOV	R0,R5
 10138	132512	042710	000020			BIC	#20,(R0)	;CLEAR COMPUTED PARITY
 10139	132516	022021				CMP	(R0)+,(R1)+	;COMPARE EVEN WORD
 10140	132520	001020				BNE	20$
 10141	132522	042710	000020			BIC	#20,(R0)	;CLEAR COMPUTED PARITY
 10142	132526	022021				CMP	(R0)+,(R1)+	;COMPARE ODD WORD
 10143	132530	001014				BNE	20$
 10144	132532	021011				CMP	(R0),(R1)	;COMPARE COMMON WORD
 10145	132534	001012				BNE	20$
 10146	132536	062703	000002		21$:	ADD	#2,R3		;TO NEXT EVEN D-RAM ADDRESS
 10147	132542	062704	000006			ADD	#6,R4		;SETUP NEXT DATA PICKUP ADR
 10148	132546	162702	000003			SUB	#3,R2		;DECREMENT WORD COUNT
 10149	132552	003346				BGT	1$		;BR IF NOT DONE YET
 10150	132554	000473				BR	$LLD2		;BACK FOR NEXT LOAD FILE LINE
 10151					
 10152	132556	000137	131772		2$:	JMP	LDDONE		;LOAD FINISHED
 10153					
 10154	132562	104025			20$:	$PMSG
 10155	132564	131727				$$RAM			;"RAM ERR,COR="
 10156	132566	010300				MOV	R3,R0
 10157	132570	010401				MOV	R4,R1
 10158	132572	104143				PNTDRM			;PRINT CORRECT D-RAM
 10159					
 10160	132574	104025				$PMSG
 10161	132576	131722				$$ACT			;"ACT="
 10162	132600	010300				MOV	R3,R0
 10163	132602	010501				MOV	R5,R1
 10164	132604	104143				PNTDRM			;PRINT ACTUAL D-RAM
 10165	132606	000753				BR	21$		;CONTINUE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 287
		DTA11 PAL[KL,SYS]	Page 13 	PROGRAM FILE LOADER, 4-SEPT-75

 10166					;KL10 C-RAM ZERO
 10167					
 10168				COMMENT ⊗
 10169				
 10170				RAM file.  The RAM file is ascii-ized text. A RAM file consists of a
 10171				Z-line, some C-lines, and some D-lines.  The Z-line zeros a selected
 10172				region of the CRAM.  Each C-line loads one or more microcode words
 10173				into the CRAM.  The D-lines load the DRAM.
 10174				
 10175				Z wc,addr,count,chksum<crlf>
 10176					The "Z " and the commas and crlf are literal.  WC is ignored
 10177					and may be an empty string.  ADDR is the first location in
 10178					the CRAM to zero; COUNT is the number of words of CRAM to zero.
 10179					If COUNT is zero, nothing is zeroed (one Z line must appear
 10180					in the file).  Chksum, as always, is the negative of the 16-bit
 10181					sum of all preceding fields.
 10182				
 10183				C wc,addr,w0pt0,w0pt1,w0pt2,w0pt3,w0pt4,w0pt5,w1pt0....,chksum
 10184					WC is a multiple of 6. Six 16-bit fields are loaded into
 10185					each CRAM word.  Note:  In octal format, denoted by CO, the
 10186					fields above are partly reversed.  They appear in the order:
 10187					Pt4,Pt3,Pt2,Pt1,Pt0,Pt5.  This is the same format as the
 10188					EC and DC commands use.
 10189					Pt5 is the spec field.  Other fields are:...
 10190					A zero WC signifies the CRAM start address is in ADDR, and
 10191					that D-lines follow.
 10192				
 10193				
 10194				D wc,addr,w0pt0,w0pt1,w0pt2,w2tp0,w2pt1,w2pt2,....,chksum
 10195					WC must be a multiple of 3.  Three 16-bit fields are loaded
 10196					into an even-odd pair of DRAM locations specified by addr
 10197					(which should be even).  WC=0 signifies end of file.
 10198				
 10199					⊗
 10200					
 10201					
 10202					
 10203	132610	104076			LDCZRO:	MRESET			;MASTER RESET
 10204	132612	005737	147730			TST	VERIFY
 10205	132616	001006				BNE	2$		;NO ZEROING IF VERIFY
 10206	132620	013701	150744			MOV	LDATA,R1	;GET C-RAM ZERO COUNT
 10207	132624	001403				BEQ	2$		;0 ZERO COUNT, BYPASS ZEROING C-RAM
 10208	132626	013700	150742			MOV	LDADR,R0	;SETUP STARTING ADDRESS
 10209					
 10210	132632	104203				MICNUL			;ZERO C-RAM
 10211	132634	005237	150734		2$:	INC	LDCNTL		;ADVANCE LOAD CONTROL TO C-RAM LOAD
 10212	132640	000441				BR	$LLD2
 10213					
 10214					;KL10 LOAD C-RAM ROUTINE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 288
		DTA11 PAL[KL,SYS]	Page 13.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10215					
 10216					;CALLS "WCRAM" WITH R0 = C-RAM ADDRESS
 10217					;		    R1 = DATA PICKUP ADDRESS
 10218					
 10219	132642	013702	150740		LDCRAM:	MOV	LDCNT,R2	;GET LOAD WORD COUNT
 10220	132646	001440				BEQ	2$		;WC = 0, TRANSFER BLOCK
 10221	132650	013703	150742			MOV	LDADR,R3	;SETUP C-RAM ADDRESS
 10222	132654	052703	040000			BIS	#BIT14,R3	;SET SPECIAL RESET BIT
 10223	132660	012704	150744			MOV	#LDATA,R4	;DATA PICKUP ADDRESS
 10224					
 10225	132664	005737	150736		1$:	TST	LDOCTF		;LOADING OCTAL ?
 10226	132670	001035				BNE	3$		;YES
 10227	132672	010300			4$:	MOV	R3,R0		;C-RAM ADDRESS TO R0
 10228	132674	010401				MOV	R4,R1		;DATA PICKUP ADDRESS TO R1
 10229					
 10230	132676	005737	147730			TST	VERIFY
 10231	132702	001001				BNE	41$
 10232	132704	104073				WCRAM			;WRITE C-RAM
 10233	132706	010300			41$:	MOV	R3,R0
 10234	132710	104074				RCRAM			;READ C-RAM BACK
 10235					
 10236	132712	012705	000006			MOV	#6,R5
 10237	132716	010401				MOV	R4,R1
 10238	132720	022021			11$:	CMP	(R0)+,(R1)+	;RAM LOADED PROPERLY ?
 10239	132722	001035				BNE	12$		;NO
 10240	132724	005305				DEC	R5
 10241	132726	001374				BNE	11$
 10242	132730	005203			42$:	INC	R3		;TO NEXT C-RAM ADDRESS
 10243	132732	062704	000014			ADD	#12.,R4		;TO NEXT PICKUP ADDRESS
 10244	132736	162702	000006			SUB	#6,R2		;DECREMENT WORD COUNT, 6 11 WDS PER
 10245	132742	003350				BGT	1$		;BR IF NOT DONE YET
 10246		132744			$LLD2=.
 10247	132744	000137	131150			JMP	LLD2		;GET NEXT LOAD FILE LINE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 289
		DTA11 PAL[KL,SYS]	Page 14 	PROGRAM FILE LOADER, 4-SEPT-75

 10248	132750	013700	150742		2$:	MOV	LDADR,R0	;SELECT C-RAM STARTING ADDRESS
 10249	132754	104075				WWADR			;WRITE ADDRESS TO C-RAM
 10250	132756	005237	150734			INC	LDCNTL		;ADVANCE LOAD CONTROL TO D-RAM LOAD
 10251	132762	000770				BR	$LLD2
 10252					
 10253					;OCTAL C-RAM LOAD, DATA IS BACKWARDS FROM UPSIDE DOWN NORMAL
 10254					
 10255	132764	011400			3$:	MOV	(R4),R0		;GET WORD 0
 10256	132766	016414	000010			MOV	10(R4),(R4)	;PUT WORD 5 IN 0'S PLACE
 10257	132772	010064	000010			MOV	R0,10(R4)	;PUT WORD 0 IN 5'S PLACE
 10258	132776	016400	000002			MOV	2(R4),R0	;GET WORD 1
 10259	133002	016464	000006	000002		MOV	6(R4),2(R4)	;PUT WORD 4 IN 1'S PLACE
 10260	133010	010064	000006			MOV	R0,6(R4)	;PUT WORD 1 IN 4'S PLACE
 10261	133014	000726				BR	4$		;NOW GO LOAD IN C-RAM
 10262					
 10263	133016	104025			12$:	$PMSG			;"RAM ERR,COR="
 10264	133020	131727				$$RAM
 10265	133022	010300				MOV	R3,R0
 10266	133024	010401				MOV	R4,R1
 10267	133026	104142				PNTCRM
 10268	133030	104031				PCRLF
 10269	133032	104025				$PMSG
 10270	133034	131722				$$ACT			;"ACT="
 10271	133036	010300				MOV	R3,R0
 10272	133040	012701	147514			MOV	#$BUFRC,R1
 10273	133044	104142				PNTCRM
 10274	133046	104031				PCRLF
 10275	133050	000727				BR	42$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 290
		DTA11 PAL[KL,SYS]	Page 15 	PROGRAM FILE LOADER, 4-SEPT-75

 10276					;LOAD TEN CORE ZERO
 10277					
 10278					;  START ADDRESS, LOW 16 BITS IN LDADR
 10279					;               , BITS 18 & 19 IN HI-BYTE OF LDCNT
 10280					;  ZERO COUNT IN LDATA
 10281					;  WORD COUNT SIGNIFIES NUMBER OF LDATA WORDS USED FOR ZEROING
 10282					;  "D10ZRO" - INCREMENTS PDP-10 ADDRESS WHILE ZEROING
 10283					
 10284	133052	012703	147702		LDTEN:	MOV	#L10ADR+2,R3	;SETUP BLOCK START ADDRESS POINTER
 10285	133056	005013				CLR	(R3)
 10286	133060	113713	150741			MOVB	LDCNT+1,(R3)	;HI-BYTE OF LDCNT IS ADR BITS 18 & 19
 10287	133064	013743	150742			MOV	LDADR,-(R3)	;SETUP ADR BITS 20-35
 10288					
 10289	133070	005737	150730			TST	LDZBLK		;TEN CORE ZERO BLOCK ?
 10290	133074	001425				BEQ	LDRDIN		;NO, LOAD DATA
 10291					
 10292	133076	104100			LDTENZ:	SM			;START MACHINE
 10293	133100	103002				 BCC	3$
 10294	133102	000137	104566			JMP	.XCTER		;FAILED
 10295	133106	005737	147730		3$:	TST	VERIFY
 10296	133112	001015				BNE	2$		;DON'T ZERO IF VERIFY
 10297	133114	012704	150744			MOV	#LDATA,R4
 10298	133120	113702	150740			MOVB	LDCNT,R2	;IS WC = 0 ?
 10299	133124	001410				BEQ	2$		;YES, NO ZEROING
 10300	133126	010301				MOV	R3,R1		;SETUP ADDRESS
 10301	133130	012400			1$:	MOV	(R4)+,R0	;SETUP ZERO COUNT
 10302	133132	104112				D10ZRO			;DEPOSIT ZEROS, CLEARING CORE
 10303	133134	103476				BCS	LD10ER
 10304	133136	012701	147704			MOV	#.DPXAD,R1
 10305	133142	005302				DEC	R2		;COMPLETED ALL ZEROS ?
 10306	133144	001371				BNE	1$		;NOT YET
 10307					
 10308	133146	000676			2$:	BR	$LLD2		;ALL REQUESTED CORE ZEROED.
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 291
		DTA11 PAL[KL,SYS]	Page 16 	PROGRAM FILE LOADER, 4-SEPT-75

 10309					;LOAD TEN DATA
 10310					
 10311					;CALLS "DPOSVR" WITH R0 = LOAD DATA ADDRESS
 10312					;		     R1 = PDP-10 ADDRESS
 10313					
 10314	133150	113702	150740		LDRDIN:	MOVB	LDCNT,R2	;GET LOAD WORD COUNT
 10315	133154	001423				BEQ	2$		;WC = 0, TRANSFER BLOCK
 10316	133156	012704	150744			MOV	#LDATA,R4	;DATA PICKUP ADDRESS
 10317					
 10318	133162	010301			1$:	MOV	R3,R1
 10319	133164	010400				MOV	R4,R0		;SETUP DATA PICKUP ADDRESS
 10320					
 10321	133166	005737	147730			TST	VERIFY
 10322	133172	001047				BNE	LD10V
 10323	133174	104107				DPOSVR			;DEPOSIT & VERIFY
 10324	133176	103423				BCS	LD10VR		;FAILED
 10325		133200			$LRDIN=.
 10326	133200	062723	000001			ADD	#1,(R3)+	;INCREMENT 10 ADDRESS
 10327	133204	005513				ADC	(R3)
 10328	133206	005743				TST	-(R3)
 10329	133210	062704	000006			ADD	#6,R4		;SETUP NEXT DATA PICKUP ADDRESS
 10330	133214	162702	000003			SUB	#3,R2		;DECREMENT WORD COUNT
 10331	133220	003360				BGT	1$		;BR IF NOT DONE YET
 10332	133222	000650				BR	$LLD2		;BACK FOR NEXT LOAD FILE LINE
 10333					
 10334	133224	012704	157204		2$:	MOV	#PGOADR,R4
 10335	133230	012324				MOV	(R3)+,(R4)+	;TRANSFER START ADDRESS
 10336	133232	011314				MOV	(R3),(R4)	;TO GO ADDRESS
 10337	133234	012737	000002	157202		MOV	#2,PGOCTL
 10338	133242	000137	131772			JMP	LDDONE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 292
		DTA11 PAL[KL,SYS]	Page 17 	PROGRAM FILE LOADER, 4-SEPT-75

 10339	133246	100431			LD10VR:	BMI	LD10ER		;N-BIT SET DEPOSIT FAILED
 10340	133250	001430				BEQ	LD10ER		;Z-BIT SET, EXAMINE FAILED
 10341		133252			LD10VE=.
 10342						PUSH	R0
 10343	133254	104025				$PMSG			;"10 ERR,ADR="
 10344	133256	131745				$$TEN
 10345	133260	012700	147700			MOV	#L10ADR,R0
 10346	133264	104137				PNTADR
 10347					
 10348	133266	104025				$PMSG
 10349	133270	131715				$$COR			;"COR="
 10350	133272	010400				MOV	R4,R0
 10351	133274	104042				PNT36
 10352					
 10353	133276	104025				$PMSG
 10354	133300	131722				$$ACT			;"ACT="
 10355						POP	R0
 10356	133304	104042				PNT36
 10357	133306	104031				PCRLF
 10358	133310	000733				BR	$LRDIN
 10359					
 10360	133312	010100			LD10V:	MOV	R1,R0
 10361	133314	104103				EXAM			;EXAMINE PRESENT CONTENTS
 10362	133316	103405				BCS	LD10ER		;CAN'T EXAMINE
 10363	133320	010001				MOV	R0,R1
 10364	133322	010400				MOV	R4,R0
 10365	133324	104052				CMPR36			;COMPARE WITH LOAD FILE
 10366	133326	103324				BCC	$LRDIN		;OK
 10367	133330	000750				BR	LD10VE		;BAD
 10368					
 10369	133332	104025			LD10ER:	$PMSG			;"10 ERR,ADR="  
 10370	133334	131745				$$TEN
 10371	133336	012700	147700			MOV	#L10ADR,R0
 10372	133342	104137				PNTADR
 10373	133344	000137	100004			JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 293
		DTA11 PAL[KL,SYS]	Page 18 	PROGRAM FILE LOADER, 4-SEPT-75

 10374					;DEVICE FILE DIRECTORY LOOKUP
 10375					
 10376	133350	104055			DEVFIL:	SETFLG			;INIT DEVICE LINE COUNT
 10377	133352	150724				  DEVLC
 10378	133354	104217				TTPINI			;INIT TTY POINTERS
 10379	133356	005037	150254			CLR	$OUTBF
 10380	133362	005737	157310			TST	DEVTYP		;LOAD FROM WHAT DEVICE ?
 10381	133366	001405				BEQ	DTFIL		;  0 = DECTAPE
 10382	133370	100402				BMI	1$		; -1 = ACT10
 10383	133372	000137	100574			JMP	RPFIL		;  1 = RP04
 10384					
 10385		100574			.IIF NDF RPASB,RPFIL==$CMDER
 10386					.IF NDF MONASB
 10387	133376	000137	100574		1$:	JMP $CMDER
 10388					.IFF
 10389					1$:	JMP	ACTFIL
 10390					.ENDC
 10391					
 10392	133402	005737	157306		DTFIL:	TST	FLOPPY
 10393	133406	001402				BEQ	10$
 10394	133410	104230				RXFILE			;FLOPPY
 10395	133412	000401				BR	11$
 10396	133414	104207			10$:	DTAFILE
 10397	133416	103402			11$:	BCS	1$
 10398	133420	000137	131124			JMP	DTRPLD
 10399	133424	000137	134146		1$:	JMP	$NONXF		;NON-EX FILE
 10400					
 10401					;DECTAPE FORMAT
 10402					;FIRST DIRECTORY BLOCK = 102 (8)
 10403					
 10404					;FILE DIRECTORY BLOCK
 10405					;	LINK TO NEXT BLOCK
 10406					;	1 - FILE NAME 1
 10407					;	2 - FILE NAME 2
 10408					;	3 - FILE EXTENSION
 10409					;	4 - DATE
 10410					;	5 - SPARE
 10411					;	6 - START BLOCK #
 10412					;	7 - LENGTH
 10413					;	8 - END BLOCK #
 10414					;	9 - SPARE
 10415					;FILE DATA BLOCK
 10416					;	LINK TO NEXT BLOCK
 10417					;	255 DATA WORDS
 10418					
 10419					;DECTAPE PROGRAM FILE SEARCH
 10420					
 10421	133430	104156			$DTAFILE:DTINIT			;DECTAPE INITIALIZATION
 10422	133432	005737	157306		DTAFL1:	TST	FLOPPY
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 294
		DTA11 PAL[KL,SYS]	Page 18.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10423	133436	001402				BEQ	20$
 10424	133440	104232				RXRDFL			;FLOPPY READ FILE
 10425	133442	000401				BR	21$
 10426	133444	104211			20$:	DTRDFL			;READ UFD DIRECTORY BLOCK
 10427	133446	103500			21$:	BCS	11$		;EOF, CAN'T FIND FILE
 10428	133450	011000				MOV	(R0),R0		;PUT FIRST BUFFER ADR IN R0
 10429	133452	012701	000034			MOV	#28.,R1		;28 ENTRIES IN DIRECTORY
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 295
		DTA11 PAL[KL,SYS]	Page 19 	PROGRAM FILE LOADER, 4-SEPT-75

 10430	133456	012037	151146		1$:	MOV	(R0)+,DIRST0	;STORE RAD50 NAME
 10431	133462	012037	151150			MOV	(R0)+,DIRST1
 10432	133466	012037	151144			MOV	(R0)+,DTEXT	;STORE RAD50 EXT
 10433	133472	022020				CMP	(R0)+,(R0)+	;SKIP 2 WORDS
 10434	133474	012037	151132			MOV	(R0)+,DTSTRT	;SAVE STARTING BLOCK #
 10435	133500	012037	151134			MOV	(R0)+,DTLNGTH	;SAVE LENGTH
 10436	133504	022020				CMP	(R0)+,(R0)+	;MOVE TO NEXT ENTRY
 10437						PUSH	<R0,R1>
 10438	133512	104155				R50UPK			;UNPACK NAME
 10439	133514	151146		
 10440	133516	151152				 DIRST0,DIRST2
 10441	133520	103446				BCS	10$
 10442	133522	104155				R50UPK
 10443	133524	151150		
 10444	133526	151155				 DIRST1,DIRST3+1
 10445	133530	103442				BCS	10$
 10446	133532	104155				R50UPK			;UNPACK EXTENSION
 10447	133534	151144		
 10448	133536	151136				 DTEXT,DTEXTS
 10449	133540	103436				BCS	10$		;ERROR RETURN
 10450					
 10451	133542	005737	151124			TST	DVDIRF		;DOING "DIR" ?
 10452	133546	001042				BNE	$DTDI1		;YES
 10453					
 10454	133550	012703	151160			MOV	#NAMBF,R3	;LOAD ADDRESS OF INPUT DATA
 10455	133554	012704	151152			MOV	#DIRST2,R4	;LOAD ADDRESS OF TABLE
 10456	133560	012700	000006			MOV	#6,R0		;SET COUNT
 10457	133564	122324			3$:	CMPB	(R3)+,(R4)+	;CHECK NAME DATA
 10458	133566	001023				BNE	10$		;BR IF NOT SAME
 10459	133570	005300				DEC	R0		;DONE 6 TIMES ?
 10460	133572	001374				BNE	3$		;BR IF NOT
 10461	133574	012703	151166			MOV	#EXTBF,R3	;LOAD ADDRESS OF EXT INPUT
 10462	133600	012704	151136			MOV	#DTEXTS,R4	;LOAD ADDRESS OF EXT STOR
 10463	133604	012700	000003			MOV	#3,R0		;SET COUNT 3 CHARS
 10464	133610	122324			6$:	CMPB	(R3)+,(R4)+	;CHECK EXT DATA
 10465	133612	001011				BNE	10$		;BR IF NOT SAME
 10466	133614	005300				DEC	R0		;DONE 3 TIMES ?
 10467	133616	001374				BNE	6$		;BR IF NOT
 10468						POP	<R1,R0>
 10469	133624	013737	151132	151172		MOV	DTSTRT,DVBUF	;LOAD STARTING BLOCK
 10470						EXIT			;NOW GO LOAD FILE
 10471	133632	000137	124064			  JMP	$EXIT
 10472		133636			$DTDI2=.
 10473					10$:	POP	<R1,R0>
 10474	133642	005301				DEC	R1		;BEEN THRU 28 ENTRIES ?
 10475	133644	001304				BNE	1$		;NOT YET
 10476	133646	000671				BR	DTAFL1		;TRY NEXT UFD BLOCK
 10477					
 10478					11$:	EXITERR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 296
		DTA11 PAL[KL,SYS]	Page 19.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10479	133650	000137	124036			  JMP	$EXITE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 297
		DTA11 PAL[KL,SYS]	Page 20 	PROGRAM FILE LOADER, 4-SEPT-75

 10480					;DECTAPE/FLOPPY DIRECTORY ROUTINE
 10481					
 10482	133654	005037	151160		$DTDI1:	CLR	NAMBF
 10483	133660	005037	151144			CLR	DTEXT
 10484	133664	022737	020040	151152		CMP	#020040,DIRST2	;DON'T PRINT SPACES
 10485	133672	001414				BEQ	1$
 10486					
 10487	133674	104025				$PMSG			;PRINT "FILE"
 10488	133676	151152				  DIRST2
 10489					
 10490	133700	104032				PSPACE
 10491					
 10492	133702	104025				$PMSG			;PRINT "EXT"
 10493	133704	151136				  DTEXTS
 10494					
 10495	133706	012700	000011			MOV	#TAB,R0
 10496	133712	104027				PNTCHR
 10497	133714	013700	151134			MOV	DTLNGTH,R0
 10498	133720	104037				PNTDEC			;PRINT NUMBER OF BLOCKS
 10499					
 10500	133722	104031				PCRLF
 10501	133724	000744			1$:	BR	$DTDI2		;GO DO NEXT
 10502					
 10503	133726	104022			$DI:	TTITRM
 10504	133730	104044				PNORML
 10505	133732	005737	157310			TST	DEVTYP
 10506	133736	001403				BEQ	$DTDIR		;DECTAPE
 10507	133740	100400				BMI	1$		;ILLEGAL ON ACT10
 10508					.LIF DF RPASB
 10509						JMP	$RPDIR		;RP04
 10510					
 10511	133742	000137	113364		1$:	JMP	$CMDE
 10512					
 10513	133746	104055			$DTDIR:	SETFLG
 10514	133750	151124				  DVDIRF		;SET DIRECTORY FLAG
 10515	133752	005737	157306			TST	FLOPPY
 10516	133756	001402				BEQ	1$
 10517	133760	104230				RXFILE			;FLOPPY
 10518	133762	000401				BR	2$
 10519	133764	104207			1$:	DTAFILE
 10520	133766	000137	100014		2$:	JMP	$CONSL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 298
		DTA11 PAL[KL,SYS]	Page 21 	PROGRAM FILE LOADER, 4-SEPT-75

 10521					;READ DEVICE FRAME SUBROUTINE
 10522					
 10523	133772	005737	151126		$DVFRAM:TST	DVCNT		;USED ALL DATA ?
 10524	133776	003002				BGT	1$		;NO
 10525					
 10526	134000	104160				DVDATA			;YES, READ NEXT BLOCK
 10527	134002	103431				BCS	DVEOF		;EOF
 10528					
 10529	134004	117700	015120		1$:	MOVB	@DVADR,R0	;GET ONE BYTE
 10530	134010	005237	151130			INC	DVADR		;INCREMENT PICKUP ADDRESS
 10531	134014	005337	151126			DEC	DVCNT		;COUNT IT
 10532	134020	042700	177400			BIC	#177400,R0	;CLEAR JUNK, CHAR IS 8 BITS
 10533	134024	060037	151070			ADD	R0,$CKS11
 10534	134030	000444				BR	$$DVX
 10535					
 10536					;READ DEVICE BUFFER SUBROUTINE
 10537					
 10538					$DVDATA:
 10539					.IF DF RPASB
 10540						TST	DEVTYP
 10541						BNE	4$
 10542					.ENDC
 10543					
 10544	134032	005737	157306			TST	FLOPPY
 10545	134036	001402				BEQ	1$
 10546	134040	104232				RXRDFL			;FLOPPY
 10547	134042	000401				BR	11$
 10548	134044	104211			1$:	DTRDFL			;DECTAPE READ
 10549	134046	103405			11$:	BCS	3$		;EOF
 10550	134050	012037	151130		2$:	MOV	(R0)+,DVADR	;SAVE BUFFER ADDRESS
 10551	134054	011037	151126			MOV	(R0),DVCNT	;SAVE BUFFER BYTE COUNT
 10552	134060	000430				BR	$$DVX
 10553					
 10554					3$:	EXITERR			;EOF
 10555	134062	000137	124036			  JMP	$EXITE
 10556					
 10557					.IF DF RPASB
 10558					4$:	MOV	#FILDSB,R0
 10559						RPRDFL			;RP04 FILE DATA BLOCK READ
 10560						BCC	2$
 10561					
 10562						CMP	#1,R0		;ERROR, EOF ?
 10563						BEQ	DVEOF		;YES
 10564						RPERROR			;NO, JUST ERROR
 10565					.ENDC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 299
		DTA11 PAL[KL,SYS]	Page 22 	PROGRAM FILE LOADER, 4-SEPT-75

 10566	134066	005737	150734		DVEOF:	TST	LDCNTL		;EOF, PRINTING A HELP FILE ?
 10567	134072	100404				BMI	1$		;YES
 10568						PMSG	<\EOF ?>
 10569	134074	104025				  $PMSG
 10570	134076	146710				  $$CLIT
 10571	134100	000137	100004			JMP	$CNTLC
 10572	134104	000137	140400		1$:	JMP	DAHLPD
 10573					
 10574					;ASSEMBLE ONE 16 BIT DATA WORD
 10575					
 10576	134110	104163			$DVWRD:	DVFRAM			;READ FRAME
 10577	134112	010037	151066			MOV	R0,LTMP
 10578	134116	104163				DVFRAM			;GET ANOTHER FRAME
 10579	134120	000300				SWAB	R0		;PLACE IN HIGH ORDER BYTE
 10580	134122	050037	151066			BIS	R0,LTMP		;PUT 2 BYTES TOGETHER
 10581	134126	013700	151066			MOV	LTMP,R0		;PUT BACK IN R0
 10582	134132	000403				BR	$$DVX
 10583					
 10584					;DECTAPE INITIALIZATION
 10585					
 10586	134134	012737	000102	151172	$DTINIT:MOV	#102,DVBUF	;SET STARTING BLOCK NUMBER
 10587					$$DVX:	EXIT
 10588	134142	000137	124064			  JMP	$EXIT
 10589					
 10590					;FILE NOT FOUND
 10591					
 10592	134146	005737	151120		$NONXF:	TST	DIAFLG		;DOING "DIAMON" FILE SELECTION ?
 10593	134152	001402				BEQ	1$		;NO
 10594	134154	000137	112234			JMP	DIANF		;YES, "DIAMON" FILE NOT FOUND
 10595					
 10596					1$:	PMSG	<NON-EX FILE>
 10597	134160	104025				  $PMSG
 10598	134162	146717				  $$CLIT
 10599	134164	000137	100004			JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 300
		DTA11 PAL[KL,SYS]	Page 23 	PROGRAM FILE LOADER, 4-SEPT-75

 10600					;RAD50 UNPACK SUBROUTINE
 10601					
 10602	134170	062766	000004	000012	$R50UPK:ADD	#4,12(SP)	;RETURN OVER TRAILING PARAMETERS
 10603						PUSH	R0
 10604	134200	013705	147634			MOV	$EMADR,R5
 10605	134204	012504				MOV	(R5)+,R4	;RAD50 ADDRESS TO R4
 10606	134206	011404				MOV	(R4),R4		;RAD50 VALUE TO R4
 10607	134210	011503				MOV	(R5),R3		;STORE ADDRESS TO R3
 10608	134212	012701	000002			MOV	#2,R1
 10609	134216	012746	777777			MOV	#-1,-(6)	;SET STACK STOP
 10610	134222	010446			1$:	MOV	R4,-(6)		;SAVE PREVIOUS VALUE
 10611	134224	005004				CLR	R4		;CLEAR R4 FOR NEXT REMAINDER
 10612	134226	011600			2$:	MOV	(6),R0		;TAKE 3/4 OF VALUE
 10613	134230	151700				BISB	@PC,R0		;???????
 10614	134232	010002				MOV	R0,R2
 10615	134234	006002				ROR	R2
 10616	134236	006202				ASR	R2
 10617	134240	160200				SUB	R2,R0
 10618	134242	042700	000037			BIC	#37,R0		;PREPARE TO TAKE 1/4 OF RESULT
 10619	134246	160016				SUB	R0,(6)		;BUT REDUCE ORIGINAL BY 3/4
 10620	134250	006000				ROR	R0		;GET 3/16 OF ORIGINAL
 10621	134252	006200				ASR	R0
 10622	134254	160016				SUB	R0,(6)
 10623	134256	060004				ADD	R0,R4		;THIS GIVES 1ST APPROXIMATION
 10624	134260	021627	000047			CMP	(6),#47		;LOW AS POSSIBLE ?
 10625	134264	101360				BHI	2$		;IF SO THIS IS BYTE REQUIRED
 10626	134266	006204				ASR	R4
 10627	134270	006204				ASR	R4
 10628	134272	006204				ASR	R4
 10629	134274	005301				DEC	R1		;DONE 2 BYTES ?
 10630	134276	001351				BNE	1$		;BR IF NOT
 10631	134300	120427	000047			CMPB	R4,#47		;LAST BYTE TOO BIG ?
 10632	134304	101005				BHI	4$		;IF YES, ERROR
 10633	134306	105704			3$:	TSTB	R4		;SPACE ?
 10634	134310	001414				BEQ	6$		;IF YES, ADD 40
 10635	134312	120427	000035			CMPB	R4,#35		;IF UNUSED CODE ....
 10636	134316	001003				BNE	5$
 10637	134320	012704	000130		4$:	MOV	#'X,R4		;ASCII X TO R4
 10638	134324	000414				BR	9$		;GO TO ERROR EXIT
 10639	134326	120427	000033		5$:	CMPB	R4,#33		;$ ?
 10640	134332	001407				BEQ	8$		;IF YES, GO ADD 11
 10641	134334	101004				BHI	7$		;FOR DIGIT OR DOT ADD 22
 10642	134336	062704	000040			ADD	#40,R4		;FOR LETTER ADD 100
 10643	134342	062704	000016		6$:	ADD	#16,R4
 10644	134346	062704	000011		7$:	ADD	#11,R4
 10645	134352	062704	000011		8$:	ADD	#11,R4
 10646	134356	110423			9$:	MOVB	R4,(3)+		;STORE RESULT
 10647	134360	012604				MOV	(6)+,R4		;GET NEXT BYTE
 10648	134362	100351				BPL	3$		;BR IF NOT STACK STOP
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 301
		DTA11 PAL[KL,SYS]	Page 23.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10649						POP	R0
 10650	134366	000665			$$$DVX:	BR	$$DVX
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 302
		DTA11 PAL[KL,SYS]	Page 24 	PROGRAM FILE LOADER, 4-SEPT-75

 10651					;DECTAPE READ/WRITE FILE ROUTINES
 10652					
 10653	134370	005737	151172		$DTRDFL:TST	DVBUF		;ANY DATA BLOCKS REMAINING ?
 10654	134374	001002				BNE	$DTRFL		;YES
 10655					$$DTXE:	EXITERR			;NO
 10656	134376	000137	124036			  JMP	$EXITE
 10657					
 10658	134402	013737	151172	151052	$DTRFL:	MOV	DVBUF,DTBLK	;SET REQUESTED BLOCK
 10659	134410	012737	151172	151054		MOV	#DVBUF,CASAV	;SET BUFFER ADDRESS
 10660	134416	012737	777400	151056		MOV	#-256.,WCSAV	;SET WORD COUNT
 10661					
 10662	134424	104161				DTREAD			;DECTAPE READ
 10663	134426	103404				 BCS	$$DTXC		;FAILED
 10664					
 10665	134430	012700	134466			MOV	#$DTINFO,R0
 10666					$$DTX:	EXIT
 10667	134434	000137	124064			  JMP	$EXIT
 10668					
 10669	134440	000137	100004		$$DTXC:	JMP	$CNTLC		;FAILED
 10670					
 10671	134444	012737	151172	151054	$DTWTFL:MOV	#DVBUF,CASAV
 10672	134452	012737	777400	151056		MOV	#-256.,WCSAV
 10673					
 10674	134460	104205				DTWRT			;WRITE DECTAPE
 10675	134462	103364				 BCC	$$DTX		;OK
 10676	134464	000765				BR	$$DTXC		;FAILED
 10677					
 10678	134466	151174			$DTINFO:DVBUF+2			;FIRST USABLE DATA WORD
 10679	134470	000776				510.			;BYTE COUNT
 10680					
 10681	134472	012700	151052		$DTBASE:MOV	#DTBLK,R0	;RETURN PARAMETER BASE ADDRESS
 10682	134476	000756				BR	$$DTX
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 303
		DTA11 PAL[KL,SYS]	Page 25 	PROGRAM FILE LOADER, 4-SEPT-75

 10683					;DECTAPE DEVICE READ/WRITE ROUTINE
 10684					
 10685	134500	012700	000005		$DTREAD:MOV	#TCRDATA+TCDO,R0
 10686	134504	000402				BR	$DTXFR
 10687					
 10688	134506	012700	000015		$DTWRT:	MOV	#TCWDATA+TCDO,R0
 10689					
 10690	134512	010037	151060		$DTXFR:	MOV	R0,DTXCMD	;SAVE COMMAND
 10691	134516	012737	000003	151062		MOV	#3,TRYCTR	;SET MAXIMUM TRY COUNT, 3.
 10692					
 10693	134524	113704	157277		$DTXF1:	MOVB	DTUNIT+1,R4	;SETUP UNIT
 10694	134530	013737	151056	177344		MOV	WCSAV,@#TCWC	;SETUP WORD COUNT
 10695	134536	013737	151054	177346		MOV	CASAV,@#TCBA	;SETUP READ ADDRESS
 10696	134544	012700	000003			MOV	#TCRNUM+TCDO,R0
 10697	134550	012701	177342			MOV	#TCCM,R1
 10698	134554	012703	004000			MOV	#TCREV,R3
 10699	134560	013702	151052			MOV	DTBLK,R2	;SETUP BLOCK # AND DIRECTION
 10700	134564	100004				BPL	$DTXF2
 10701	134566	005402				NEG	R2
 10702	134570	062704	000010			ADD	#10,R4		;REVERSE, SET REV INDICATOR
 10703	134574	050300				BIS	R3,R0		;START UP IN REVERSE
 10704					
 10705	134576	012737	000006	151074	$DTXF2:	MOV	#6,REVCNT	;SET MAXIMUM REVERSAL COUNT, 6.
 10706	134604	005037	151072			CLR	INTSW		;SET INTSW FOR SEARCH
 10707					
 10708					$DTXF3:	PUSH	R3
 10709	134612	004737	120670			JSR	PC,$TIRDY	;ANY OPERATOR INTERRUPTS ?
 10710	134616	103413				BCS	2$		;NO
 10711	134620	113703	147744			MOVB	$TICHR,R3	;GET CHAR
 10712	134624	142703	000200			BICB	#200,R3
 10713	134630	122703	000003			CMPB	#CNTRLC,R3	;IS IT CONTROL C ?
 10714	134634	001004				BNE	2$		;NO
 10715	134636	042711	000116			BIC	#116,(R1)	;YES, STOP DECTAPE
 10716	134642	000137	120524			JMP	$TICC		;AND ABORT
 10717					2$:	POP	R3
 10718	134650	053700	157276			BIS	DTUNIT,R0	;SELECT UNIT
 10719	134654	010011				MOV	R0,(R1)		;SET TCCM
 10720	134656	032711	100200		1$:	BIT	#TCERR+TCRDY,(R1) ;WAIT FOR DONE OR ERROR
 10721	134662	001775				BEQ	1$
 10722	134664	100445				BMI	DTER		;BR IF ERROR
 10723	134666	105737	151072			TSTB	INTSW		;SEARCH OR TRANSFER ?
 10724	134672	001110				BNE	DATINT		;BR IF TRANSFER
 10725	134674	023702	177350			CMP	@#TCDT,R2	;BLOCK MATCH ?
 10726	134700	001423				BEQ	DTSRF		;BR IF YES
 10727	134702	003011				BGT	DTSRE		;BR IF LARGER
 10728	134704	030311				BIT	R3,(R1)		;SMALLER, REVERSE ?
 10729	134706	001740				BEQ	$DTXF3		;FORWARD, CONTINUE DIRECTION
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 304
		DTA11 PAL[KL,SYS]	Page 26 	PROGRAM FILE LOADER, 4-SEPT-75

 10730	134710	062737	000003	177350	DTSRA:	ADD	#3,@#TCDT	;+3 TO TCDT
 10731	134716	023702	177350			CMP	@#TCDT,R2	;LOWER BY 3 OR MORE ?
 10732	134722	101461				BLOS	DTREV		;YES, GO REVERSE
 10733	134724	000731				BR	$DTXF3		;NO, CONTINUE DIRECTION
 10734					
 10735	134726	030311			DTSRE:	BIT	R3,(R1)		;BLK HIGH, CHECK DIRECTION
 10736	134730	001327				BNE	$DTXF3		;BR IF REV, CONTINUE DIRECTION
 10737	134732	162737	000003	177350		SUB	#3,@#TCDT	;FWD, -3 TO TCDT
 10738	134740	020237	177350			CMP	R2,@#TCDT	;HIGHER BY 3 OR MORE ?
 10739	134744	003450				BLE	DTREV		;REVERSE IF HIGHER BY 3 OR MORE
 10740	134746	000720				BR	$DTXF3		;NO, CONTINUE DIRECTION
 10741					
 10742	134750	123704	177343		DTSRF:	CMPB	@#TCCM1,R4	;BLOCK SAME, SAME DIRECTION ?
 10743	134754	001315				BNE	$DTXF3		;BR IF NOT, CONTINUE SEARCH
 10744	134756	105137	151072		$DTXF4:	COMB	INTSW		;WANTED ???
 10745	134762	113700	151060			MOVB	DTXCMD,R0	;SET UP XFER COMMAND
 10746	134766	005737	151052			TST	DTBLK
 10747	134772	100306				BPL	$DTXF3		;FORWARD READ
 10748	134774	050300				BIS	R3,R0		;REVERSE READ
 10749	134776	000704				BR	$DTXF3
 10750					
 10751	135000	105737	151072		DTER:	TSTB	INTSW		;SEARCH OR XFER ?
 10752	135004	001003				BNE	DTERA		;BR IF XFER
 10753	135006	005737	177340			TST	@#TCST		;END ZONE ?
 10754	135012	100425				BMI	DTREV		;BR IF YES, TO REVERSE
 10755	135014	032737	063000	177340	DTERA:	BIT	#TCSOFT,@#TCST	;CHECK FOR SOFT ERROR
 10756	135022	001414				BEQ	DTHDER		;BR IF NOT SOFT ERROR
 10757	135024	105337	151062			DECB	TRYCTR		;3RD TRY ?
 10758	135030	001667				BEQ	$DTXF3		;BR IF YES
 10759	135032	000634				BR	$DTXF1		;GO TRY AGAIN
 10760					
 10761	135034	042711	000116		DTERB:	BIC	#116,(R1)	;STOP DECTAPE
 10762						PMSG	<?SOFT>
 10763	135040	104025				  $PMSG
 10764	135042	146733				  $$CLIT
 10765					DTERC:	PMSG	< DTA ERR>
 10766	135044	104025				  $PMSG
 10767	135046	146741				  $$CLIT
 10768						EXITERR
 10769	135050	000137	124036			  JMP	$EXITE
 10770					
 10771	135054	042711	000116		DTHDER:	BIC	#116,(R1)	;STOP DECTAPE
 10772						PMSG	<?HARD>
 10773	135060	104025				  $PMSG
 10774	135062	146752				  $$CLIT
 10775	135064	000767				BR	DTERC
 10776					
 10777	135066	060300			DTREV:	ADD	R3,R0		;CHANGE DIRECTION
 10778	135070	042700	010000			BIC	#BIT12,R0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 305
		DTA11 PAL[KL,SYS]	Page 26.1 	PROGRAM FILE LOADER, 4-SEPT-75

 10779	135074	105337	151074		DTREVC:	DECB	REVCNT		;6TH REVERSAL ?
 10780	135100	001243				BNE	$DTXF3		;BR IF NOT
 10781	135102	042711	000116			BIC	#116,(R1)	;STOP DECTAPE
 10782						PMSG	<?REV>
 10783	135106	104025				  $PMSG
 10784	135110	146760				  $$CLIT
 10785	135112	000754				BR	DTERC
 10786					
 10787	135114	042711	000116		DATINT:	BIC	#116,(R1)	;STOP DECTAPE
 10788						EXIT			;DONE
 10789	135120	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 306
		DTA11 PAL[KL,SYS]	Page 27 	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE

 10790					.SBTTL	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE
 10791					
 10792					;CALL:
 10793					;	ASCR50
 10794					;	  ASCII ADDRESS
 10795					;	  RAD50 ADDRESS
 10796					;NINE BYTES OF ASCII INPUT
 10797					;THREE WORDS OF RAD50 OUTPUT
 10798					
 10799	135124	062766	000004	000012	$ASCR50:ADD	#4,12(SP)	;RETURN OVER TRAILING PARAMETERS
 10800						PUSH	R0
 10801	135134	013705	147634			MOV	$EMADR,R5
 10802	135140	012501				MOV	(R5)+,R1	;SETUP ASCII ADDRESS
 10803	135142	011504				MOV	(R5),R4		;SETUP RAD50 STORAGE ADDRESS
 10804	135144	012703	066600			MOV	#066600,R3
 10805	135150	005014			1$:	CLR	(R4)		;RESULT WORD
 10806	135152	012700	135242		2$:	MOV	#30$,R0		;SETUP SCAN TABLE
 10807	135156	112002			3$:	MOVB	(R0)+,R2	;PUT CONVERSION IN R2
 10808	135160	001425				BEQ	20$		;IF END OF TABLE, ERROR
 10809	135162	121120				CMPB	(R1),(R0)+	;COMPARE ASCII CHAR
 10810	135164	103423				BLO	20$		;IF LESS THAN TABLE ENTRY, ERROR
 10811	135166	121120				CMPB	(R1),(R0)+
 10812	135170	101372				BHI	3$		;LOOP, HAVEN'T FOUND YET
 10813	135172	112100				MOVB	(R1)+,R0	;FOUND, ASCII CHAR TO R0
 10814	135174	060200				ADD	R2,R0		;CONVERT
 10815	135176	006314				ASL	(R4)
 10816	135200	006314				ASL	(R4)
 10817	135202	006314				ASL	(R4)
 10818	135204	061400				ADD	(R4),R0
 10819	135206	006314				ASL	(R4)
 10820	135210	006314				ASL	(R4)
 10821	135212	060014				ADD	R0,(R4)
 10822	135214	006303				ASL	R3		;SHIFT RAD50 WORD COUNTER
 10823	135216	100755				BMI	2$		;NOT DONE WITH THIS RAD50 YET
 10824	135220	001402				BEQ	10$		;IF 0, ALL DONE
 10825	135222	005724				TST	(R4)+		;STEP TO NEXT RAD50 WORD
 10826	135224	000751				BR	1$		;GO DO NEXT
 10827					10$:	POP	R0
 10828						EXIT
 10829	135230	000137	124064			  JMP	$EXIT
 10830					20$:	POP	R0
 10831						EXITERR
 10832	135236	000137	124036			  JMP	$EXITE
 10833					
 10834	135242	   340		
 10835	135243	   040		
 10836	135244	   040			30$:	.BYTE	340,' ,' 	;SPACE
 10837	135245	   367		
 10838	135246	   044		
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 307
		DTA11 PAL[KL,SYS]	Page 27.1 	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE

 10839	135247	   044				.BYTE	367,'$,'$	;DOLLAR SIGN
 10840	135250	   356		
 10841	135251	   056		
 10842	135252	   056				.BYTE	356,'.,'.	;PERIOD
 10843	135253	   356		
 10844	135254	   060		
 10845	135255	   071				.BYTE	356,'0,'9	;DIGITS
 10846	135256	   300		
 10847	135257	   101		
 10848	135260	   132				.BYTE	300,'A,'Z	;UPPER CASE LETTERS
 10849					;	.ENABL	LC
 10850	135261	   240		
 10851	135262	   141		
 10852	135263	   172				.BYTE	240,'a,'z	;LOWER CASE LETTERS
 10853	135264	   000				.BYTE	0		;INDICATE THE END OF THE TABLE
 10854		135266				.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 308
		KLDCP PAL[KL,SYS]	Page 5.6 	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE

 10855					
 10856								;Disk boot for WAITS
 10857					.LIF DF BOOASB
 10858					  .INSRT  BOOT.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 309
		BOOT PAL[KL,SYS]	Page 1 	ASCR50	ASCII TO RAD50 CONVERSION ROUTINE

 10859				COMMENT ⊗   VALID 00003 PAGES
 10860				C REC  PAGE   DESCRIPTION
 10861				C00001 00001
 10862				C00002 00002	.SBTTL DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT
 10863				C00005 00003	$DS   DS command  to copy DSKDMP BOOT into KL10 and start it.
 10864				C00007 ENDMK
 10865					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 310
		BOOT PAL[KL,SYS]	Page 2 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10866					.SBTTL DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT
 10867					
 10868					;bootbg is located in 11 high core (152210)
 10869					;bootsz is 2260
 10870					
 10871					;LD Command to load the bootstrap code from the dectape into 11 memory.
 10872					
 10873					.IF DF BOOASB
 10874					
 10875					;LOAD DSKDMP BOOTSTRAP
 10876	135266	012703	147702		LDBOOT:	MOV #L10ADR+2,R3	;SETUP BLOCK START ADDRESS POINTER
 10877	135272	005013				CLR (R3)
 10878	135274	113713	150741			MOVB LDCNT+1,(R3)	;HI-BYTE OF LDCNT IS ADR BITS 18 & 19
 10879	135300	013743	150742			MOV LDADR,-(R3)		;SETUP ADR BITS 20-35
 10880	135304	005737	150730			TST LDZBLK		;IS IT A Z LINE?
 10881	135310	001437				BEQ LDBDAT		;NO, LOAD DATA
 10882	135312	012337	152262			MOV (R3)+,BOOTBG	;STARTING ZERO ADDRESS (LOW 16 BITS)
 10883	135316	011337	152264			MOV (R3),BOOTBG+2	; HIGH TWO BITS (18 AND 19)
 10884	135322	005001				CLR R1
 10885	135324	012702	150744			MOV #LDATA,R2
 10886	135330	113703	150740			MOVB LDCNT,R3
 10887	135334	062201			1$:	ADD (R2)+,R1		;ACCUMULATE TOTAL # WORDS TO ZERO
 10888	135336	005303				DEC R3
 10889	135340	001375				BNE 1$
 10890	135342	010102				MOV R1,R2
 10891						SL R1,1
 10892	135346	060201				ADD R2,R1		;TIMES 3 IS NUMBER OF PDP-11 WORDS
 10893	135350	020127	002260			CMP R1,#BOOTSZ
 10894	135354	003404				BLE 2$			;BRANCH IF SMALL ENOUGH
 10895						PMSG <?BOOT TOO LONG>
 10896	135356	104025				  $PMSG
 10897	135360	146765				  $$CLIT
 10898	135362	000137	100004			JMP $CNTLC
 10899					
 10900	135366	012701	152272		2$:	MOV #BOOTBF,R1
 10901	135372	012702	002260			MOV #BOOTSZ,R2
 10902	135376	005021			3$:	CLR (R1)+
 10903	135400	005302				DEC R2
 10904	135402	001375				BNE 3$			;CLEAR OUT THE BOOT BUFFER
 10905	135404	000137	131150		LDBLD2:	JMP LLD2		;DO NEXT LINE
 10906					
 10907	135410	113700	150740		LDBDAT:	MOVB LDCNT,R0		;WC
 10908	135414	001421				BEQ LDBXFR		;WC=0 MEANS TRANSFER BLOCK
 10909	135416	012701	150744			MOV #LDATA,R1
 10910	135422	013702	150742			MOV LDADR,R2
 10911	135426	163702	152262			SUB BOOTBG,R2		;GET OFFSET FROM START OF BUFFER
 10912	135432	010203				MOV R2,R3
 10913						SL R2,2
 10914						SL R3,1
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 311
		BOOT PAL[KL,SYS]	Page 2.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10915	135442	060302				ADD R3,R2		;TIMES 6 GIVES BYTE OFFSET FROM BOOTBF
 10916	135444	062702	152272			ADD #BOOTBF,R2
 10917	135450	012122			5$:	MOV (R1)+,(R2)+		;COPY A WORD
 10918	135452	005300				DEC R0
 10919	135454	001375				BNE 5$
 10920	135456	000752				BR LDBLD2
 10921					
 10922	135460	012337	152266		LDBXFR:	MOV (R3)+,BOOTSA
 10923	135464	011337	152270			MOV (R3),BOOTSA+2	;SAVE AWAY STARTING ADDRESS
 10924	135470	000137	131772			JMP LDDONE
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 312
		BOOT PAL[KL,SYS]	Page 3 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10925					;$DS   DS command  to copy DSKDMP BOOT into KL10 and start it.
 10926					
 10927	135474	104022			$DS:	TTITRM
 10928	135476	005737	152266			TST BOOTSA
 10929	135502	001007				BNE 2$
 10930	135504	005737	152270			TST BOOTSA+2
 10931	135510	001004				BNE 2$
 10932						PMSG <?LOAD DSKDMP - USE LD>
 10933	135512	104025				  $PMSG
 10934	135514	147004				  $$CLIT
 10935	135516	000137	100004			JMP $CNTLC
 10936					
 10937	135522	023727	157262	000036	2$:	CMP PEBITS,#36
 10938	135530	001410				BEQ 3$
 10939	135532	023727	157262	000037		CMP PEBITS,#37
 10940	135540	001404				BEQ 3$
 10941						PMSG <FIX PARITY ENABLES - PE 36>
 10942	135542	104025				  $PMSG
 10943	135544	147032				  $$CLIT
 10944	135546	000137	100004			JMP $CNTLC
 10945					
 10946	135552	023727	157252	000017	3$:	CMP CLKDFL+4,#17
 10947	135560	001402				BEQ 4$
 10948						PMSG <SOME CACHE DISABLED - USE CE 17\>
 10949	135562	104025				  $PMSG
 10950	135564	147065				  $$CLIT
 10951	135566	012703	147702		4$:	MOV #L10ADR+2,R3
 10952	135572	013713	152264			MOV BOOTBG+2,(R3)
 10953	135576	013743	152262			MOV BOOTBG,-(R3)
 10954	135602	012702	000620			MOV #BOOTWD,R2		;NUMBER OF PDP-10 WORDS IN BUFFER
 10955	135606	012704	152272			MOV #BOOTBF,R4
 10956	135612	104076				MRESET
 10957	135614	104100				SM
 10958	135616	010301			1$:	MOV R3,R1
 10959	135620	010400				MOV R4,R0
 10960	135622	104107				DPOSVR
 10961	135624	103420				BCS DSVER
 10962	135626	005213				INC (R3)		;STAY IN SAME 64K SECTION
 10963	135630	062704	000006			ADD #6,R4		;NEXT PDP-10 WORDS WORTH
 10964	135634	005302				DEC R2
 10965	135636	001367				BNE 1$
 10966	135640	012704	157204			MOV #PGOADR,R4
 10967	135644	013724	152266			MOV BOOTSA,(R4)+
 10968	135650	013714	152270			MOV BOOTSA+2,(R4)
 10969	135654	012737	000002	157202		MOV #2,PGOCTL
 10970	135662	000137	113216			JMP $$GO		;START IT UP
 10971					
 10972					DSVER:	PMSG <DEX ERROR IN DS>
 10973	135666	104025				  $PMSG
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 313
		BOOT PAL[KL,SYS]	Page 3.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10974	135670	147126				  $$CLIT
 10975	135672	000137	100004			JMP $CNTLC
 10976					
 10977					.ENDC ;IF DF BOOASB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 314
		KLDCP PAL[KL,SYS]	Page 5.7 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10978					
 10979								;RX01 floppies
 10980					.LIF DF RXASB
 10981					  .INSRT  FLOPPY.PAL
 10982					
 10983								;RP04 disk
 10984					.LIF DF RPASB
 10985					  .INSRT  RP0411.PAL
 10986					
 10987								;queued message protocol
 10988					.LIF DF %%QMP
 10989					  .INSRT  QMP11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 315
		QMP11 PAL[KL,SYS]	Page 1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 10990				COMMENT ⊗   VALID 00015 PAGES
 10991				C REC  PAGE   DESCRIPTION
 10992				C00001 00001
 10993				C00003 00002	 MACROS AND QUEUE ENTRY DEFINITIONS
 10994				C00005 00003		ETHERNET OUTPUT COMPLETION INTERRUPT ROUTINE 	ENOINT, SNDEN, SNDENR
 10995				C00009 00004	 ENIINT	ETHERNET INPUT COMPLETION INTERRUPT ROUTINE
 10996				C00016 00005	 DTEINT, DTE10D Interrupt routines
 10997				C00019 00006	 DTE11D - COMPLETION OF TO11 TRANSFER FROM DTE
 10998				C00025 00007	 QMPCMD - ROUTINE CALLED FROM KLDCP WHEN 10 SENDS ITEM COUNT
 10999				C00029 00008	 SND10 -  ROUTINE TO QUEUE BLOCK FOR XFER TO 10
 11000				C00032 00009	 QINI - ROUTINE TO INITIALIZE QUEUE STRUCTURES
 11001				C00035 00010	 $QUEUE - GENERALIZED QUEUE ROUTINE
 11002				C00037 00011	 QMPINI - ROUTINE TO INITIALIZE INTERRUPT ADDRESSES ETC.
 11003				C00040 00012	 RQCB/RLCB: first fit dynamic core allocation routines
 11004				C00042 00013	 $RLCB - ReLease Core Block
 11005				C00046 00014	 $RQCB - REQUEST CORE BLOCK
 11006				C00051 00015	 $SAVAL, $SAVVR, $SAVRG  Register Save and Restore Co-routines
 11007				C00054 ENDMK
 11008					C⊗;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 316
		QMP11 PAL[KL,SYS]	Page 2 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11009					; MACROS AND QUEUE ENTRY DEFINITIONS
 11010					;
 11011					
 11012						.MACRO	CALL	A
 11013						JSR	PC,A
 11014						.ENDM
 11015					
 11016						.MACRO	RETURN
 11017						RTS	PC
 11018						.ENDM
 11019					
 11020						.MACRO	SAVAL
 11021						JSR	PC,$SAVAL
 11022						.ENDM
 11023					 
 11024						.MACRO	SAVVR
 11025						JSR	R2,$SAVVR
 11026						.ENDM
 11027					
 11028						.MACRO	SAVRG
 11029						JSR	R5,$SAVRG
 11030						.ENDM
 11031					 
 11032						.MACRO QUEUE	A
 11033						JSR	R5,$QUEUE
 11034						.WORD	A
 11035						.ENDM
 11036					 
 11037						.MACRO	QCLR	A
 11038						JSR	R5,$QCLR
 11039						.WORD	A
 11040						.ENDM
 11041					 
 11042					; THE FOLLOWING DEFINITIONS ARE FOR QUEUE HEADERS
 11043					;
 11044		000000			QCHN=0		; OFFSET TO CHAIN POINTER IN QUEUE ENTRY
 11045		000002			QSIZ=2		; OFFSET FROM ENTRY TO BYTE COUNT FOR QUEUE ENTRY
 11046		000004			QREQ=4		; OFFSET FROM ENTRY TO REQUEST VALUE FOR QUEUE ENTRY
 11047		000006			QENWC=6		; OFFSET TO ETHERNET PACKET WORD COUNT
 11048		000010			QENMSG==10	; OFFSET TO START OF EN MESSAGE INSIDE QUEUE BLOCK
 11049					;
 11050		000006			QHDRSZ=6	; SIZE OF QUEUE ENTRY HEADER
 11051					;
 11052		000000			QNOPMS=0	; This packet is a no-op
 11053		000001			QECHRY=1	; THIS PACKET IS AN ECHO RESPONSE
 11054		000002			QECHRQ=2	; REQUEST for an echo response
 11055		000003			QENPKT=3	; An ethernet packet
 11056		000004			QENADR=4	; An ethernet host address.
 11057		000005			QDTMSG=5	; Dectape message
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 317
		QMP11 PAL[KL,SYS]	Page 2.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11058		000006			QENBCC=6	; Ethernet broadcast-packet control command
 11059					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 318
		QMP11 PAL[KL,SYS]	Page 3 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11060					;	ETHERNET OUTPUT COMPLETION INTERRUPT ROUTINE 	ENOINT, SNDEN, SNDENR
 11061					;
 11062					;
 11063					ENOINT:	CALL	1$		; CALL THE REAL INTERRUPT HANDLER
 11064	135676	004737	135704			JSR	PC,1$
 11065	135702	000002				RTI			; THEN RETURN FROM INTERRUPT
 11066					;
 11067					; THIS INTERRUPT HANDLER WILL SAVE AND RESTORE REGISTERS
 11068					;
 11069					1$:	SAVVR			; SAVE REGS R0-R2
 11070	135704	004237	140266			JSR	R2,$SAVVR
 11071	135710	005737	160024			TST	ENOCSR		; TEST FOR ERROR INDICATION
 11072	135714	100417				BMI	3$		; IF MI THEN COLLISION OR OTHER ERROR
 11073	135716	005237	157130			INC	EN0PKO		; INCREMENT COUNT OF SUCCESSFUL I/OS
 11074	135722	013700	157046		2$:	MOV	ENETQ,R0	; GET QUEUE ADDRESS TO RELEASE BLOCK
 11075	135726	001425				BEQ	5$		; QUEUE EMPTY, MAYBE QUEUE RESET?
 11076	135730	011037	157046			MOV	(R0),ENETQ	; UNCHAIN BLOCK FROM QUEUE
 11077	135734	001002				BNE	21$		; IF NE THEN MORE IN CHAIN
 11078	135736	005037	157050			CLR	ENETQ+2		; IF QUEUE EMPTY, ZERO NEWEST POINTER
 11079					21$:
 11080						CALL	QGIVE		; NOW GO RELEASE THE CORE BLOCK
 11081	135742	004737	136766			JSR	PC,QGIVE
 11082						CALL	SNDEN		; CHECK ETHERNET QUEUE AND RESTART I/O
 11083	135746	004737	136010			JSR	PC,SNDEN
 11084						RETURN			; RETURN FROM INTERRUPT
 11085	135752	000207				RTS	PC
 11086					
 11087	135754	005237	157126		3$:	INC	EN0ER1		; STEP TOTAL RETRY COUNT
 11088	135760	005337	157114			DEC	EN0TRY		; DECREMENT CURRENT RETRY COUNT
 11089	135764	003003				BGT	4$		; OK, RETRY THE MESSAGE AGAIN
 11090	135766	005237	157124			INC	EN0PER		; STEP COUNT OF PERMANENT ERRORS
 11091	135772	000753				BR	2$		; THROW THE BUFFER AWAY, TRY NEXT
 11092					
 11093					4$:	CALL	SNDENR		; RETRY THE CURRENT BUFFER
 11094	135774	004737	136016			JSR	PC,SNDENR
 11095						RETURN			; AND RETURN
 11096	136000	000207				RTS	PC
 11097					
 11098	136002	005037	160024		5$:	CLR	ENOCSR		; CLEAR INTERRUPT ENABLE BIT
 11099						RETURN
 11100	136006	000207				RTS	PC
 11101					
 11102					
 11103					; SNDEN SNDENR - Transmit message at head of ENET Queue to the Ethernet
 11104					;
 11105					;SNDENR is the entry point for a retry.
 11106					;
 11107	136010	012737	000010	157114	SNDEN:	MOV	#10,EN0TRY		; SET DEFAULT RETRY COUNT
 11108	136016	013700	157046		SNDENR:	MOV	ENETQ,R0		; GET ADDRESS OF NEXT QUEUE ENTRY
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 319
		QMP11 PAL[KL,SYS]	Page 3.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11109	136022	001424				BEQ	3$			; NOTHING IN QUEUE
 11110	136024	016001	000006			MOV	QENWC(R0),R1		; GET PACKET WORD COUNT FROM BLOCK
 11111	136030	003001				BGT	1$			; IF GT THEN CONTINUE
 11112	136032	104000				FATAL				; OTHERWISE INDICATE ERROR
 11113					
 11114	136034	005401			1$:	NEG	R1			; MAKE 2'S COMPLEMENT FOR I/O
 11115	136036	010137	160020		2$:	MOV	R1,ENOWC		; SET WORD COUNT IN EN DEVICE
 11116	136042	062700	000010			ADD	#QENMSG,R0		; POINT TO DATA IN QUEUE ENTRY
 11117	136046	010037	160022			MOV	R0,ENOWA		; SET WORD ADDRESS IN EN DEVICE
 11118	136052	013702	157114			MOV	EN0TRY,R2		; USE RETRY VALUE TO SET DELAY
 11119	136056	016237	157056	160026		MOV	EN0DLY(R2),ENODLY	; SET DELAY VALUE IN EN DEVICE
 11120	136064	012737	000101	160024		MOV	#101,ENOCSR		; SET GO AND INTERRUPT ENABLE
 11121						RETURN				; AND RETURN
 11122	136072	000207				RTS	PC
 11123					
 11124	136074	005037	160024		3$:	CLR	ENOCSR			; CLEAR INT ENABLE AND GO
 11125						RETURN
 11126	136100	000207				RTS	PC
 11127					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 320
		QMP11 PAL[KL,SYS]	Page 4 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11128					; ENIINT	ETHERNET INPUT COMPLETION INTERRUPT ROUTINE
 11129					;
 11130					;	ENTERED AT COMPLETION OF ETHERNET INPUT
 11131					;
 11132					ENIINT:	CALL	1$		; CALL THE REAL INTERRUPT HANDLER
 11133	136102	004737	136110			JSR	PC,1$
 11134	136106	000002				RTI			; AND RETURN FROM INTERRUPT
 11135					;
 11136					1$:	SAVVR			; SAVE REGS R0-R2
 11137	136110	004237	140266			JSR	R2,$SAVVR
 11138	136114	010346				MOV	R3,-(SP)	; AND ONE MORE
 11139	136116	012703	000002			MOV	#2,R3		; Select other input buffer
 11140	136122	163703	157106			SUB	EN0IND,R3
 11141	136126	010346				MOV	R3,-(SP)	; Save on index to input buffer on stack
 11142	136130	013746	160034			MOV	ENICSR,-(SP)	; Save status of this packet
 11143	136134	013746	160030			MOV	ENIWC,-(SP)	; Save residual word count
 11144						CALL	ENISET		; Start reading next packet
 11145	136140	004737	136270			JSR	PC,ENISET
 11146	136144	013703	157106			MOV	EN0IND,R3	; Now, select regular buffer
 11147	136150	012601				MOV	(SP)+,R1	; GET RESIDUAL WORD COUNT IN R1
 11148	136152	005726				TST	(SP)+		; CHECK FOR OVERRUN OR COLLISION
 11149	136154	100003				BPL	2$		; IF PL THEN GOOD PACKET RECIEVED
 11150	136156	005237	157120			INC	EN0ER2		; INCREMENT COUNT OF INPUT PERM ERRS
 11151	136162	000436				BR	3$		; AND RESTART THE I/O
 11152					
 11153	136164	005237	157122		2$:	INC	EN0PKI		; INCREMENT COUNT OF INPUT PACKETS
 11154	136170	052701	177000			BIS	#177000,R1	; INTERFACE REQUIRES THIS CROCK
 11155					.IF DF PCKASB
 11156						MOV	EN0BUF(R3),R0
 11157						SUB	#QENMSG,R0	; Pretend we're a queue block
 11158						CALL	ENPCHK		; Check to see if it got clobbered later.
 11159					.ENDC; DF PCKASB
 11160	136174	062701	000454			ADD	#EN0BSZ,R1	; CONVERT NOW TO POSITIVE W.C.
 11161	136200	001427				BEQ	3$		; HAH, A ZERO LENGTH PACKET...
 11162					
 11163					;Code to discard quickly any broadcast packets, under control of ENBCCF, set by 10.
 11164	136202	016300	157110			MOV	EN0BUF(R3),R0	; address of packet buffer
 11165	136206	116002	000001			MOVB	1(R0),R2	; destination host
 11166	136212	001004				BNE	20$		; just if not broadcast packet
 11167	136214	032737	000001	157104		BIT	#1,ENBCCF	; see if broadcast packets should be ignored
 11168	136222	001416				BEQ	3$		; jump to ignore
 11169					
 11170	136224	006301			20$:	ASL	R1		; MAKE R1 INTO A BYTE COUNT
 11171	136226	062701	000010			ADD	#QENMSG,R1	; ADD SPACE FOR BLOCK HDR
 11172						CALL	QGET		; GO GET THE BUFFER
 11173	136232	004737	137006			JSR	PC,QGET
 11174	136236	103003				BCC	21$		; C = 0, BUFFER OK, MOVE THE PACKET
 11175	136240	005237	157116			INC	EN0MEM		; INCREMENT COUNT OF LOST PACKETS (NO MEM)
 11176	136244	000405				BR	3$		; AND RESTART I/O
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 321
		QMP11 PAL[KL,SYS]	Page 4.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11177					
 11178					21$:	CALL	ENICOP		; MOVE FROM READ BUFFER TO CORE BLOCK
 11179	136246	004737	136314			JSR	PC,ENICOP
 11180					.IIF DF PCKASB,	CALL	ENPCHK	; CHECK CHECKSUM
 11181						QUEUE	TO10Q		; QUEUE THE PACKET TO THE 10
 11182	136252	004537	137502			JSR	R5,$QUEUE
 11183	136256	157052				.WORD	TO10Q
 11184					;bug check:	(;;;'ed t to make space.  We haven't see any recently. TVR/14-Jan-81
 11185					;;;	MOVB	QENMSG+1(R0),R2	; "first" byte of message = destination host number
 11186					;;;	BEQ	3$		; zero is broadcast packet.
 11187					;;;	CMPB	R2,ENIHAD	; compare to our host address
 11188					;;;	BEQ	3$		;
 11189					;;;	PMSG	<\?EN BAD ADDR\>
 11190					;;;
 11191					3$:
 11192					.IF DF PCKASB
 11193						MOV	EN0BUF(R3),R0	; Fill buffer with fixed pattern to see how
 11194						MOV	#EN0BSZ,R1	; hardware is losing...
 11195					66$:	MOV	#52525,(R0)+
 11196						SOB	R1,66$
 11197					.ENDC; DF PCKASB
 11198	136260	012637	157106			MOV	(SP)+,EN0IND	; Next buffer now becomes current
 11199	136264	012603				MOV	(SP)+,R3	; Restore borrowed register
 11200						RETURN
 11201	136266	000207				RTS	PC
 11202					
 11203					;Setup for Ethernet input.  R3 is index of input buffer
 11204	136270	016337	157110	160032	ENISET:	MOV EN0BUF(R3),ENIWA	; SET BUFFER ADDRESS FOR EN DEVICE
 11205	136276	012737	777324	160030		MOV #-EN0BSZ,ENIWC	; AND SET WORD COUNT FOR XFER
 11206	136304	012737	000101	160034		MOV #101,ENICSR		; SET GO AND INTERRUPT ENABLE
 11207						RETURN			; GO RETURN FROM INTERRUPT
 11208	136312	000207				RTS	PC
 11209					
 11210					;enter here with R0 = Address of core block. R1=size of our request
 11211					;		 R3 = Index of Ethernet input buffer
 11212					ENICOP:	SAVVR			; SAVE REGS R0-R2
 11213	136314	004237	140266			JSR	R2,$SAVVR
 11214	136320	012760	000003	000004		MOV	#QENPKT,QREQ(R0); SET Packet type in block
 11215	136326	162701	000010			SUB	#QENMSG,R1	; REDUCE COUNT TO PACKET SIZE (BYTES)
 11216	136332	006201				ASR	R1		; AND CHANGE TO WORD COUNT
 11217	136334	010160	000006			MOV	R1,QENWC(R0)	; STORE PACKET WORD COUNT
 11218	136340	062700	000010			ADD	#QENMSG,R0	; POINT R0 TO DATA AREA
 11219	136344	016302	157110			MOV	EN0BUF(R3),R2	; SET LOCATION OF FIRST WORD
 11220	136350	012220			5$:	MOV	(R2)+,(R0)+	; MOVE WORD FROM READ BUFF TO CORE BLOCK
 11221	136352	077102				SOB	R1,5$		; LOOP
 11222						RETURN			; RETURN FROM MOVE
 11223	136354	000207				RTS	PC
 11224					
 11225					.IF DF PCKASB	;If checksumming PUPs
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 322
		QMP11 PAL[KL,SYS]	Page 4.2 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11226					
 11227					;Bugtrap: Check PUP checksum of Ethernet packet
 11228					;R0 points to queue entry.  (Subtract QENMSG if you have a bare packet)
 11229					ENPCHK:	SAVVR			;For paranoia's sake
 11230						ADD	#QENMSG,R0
 11231						CMP	2(R0),#1000	;PUP packet?
 11232						  BNE	79$		;  No, forget it
 11233						CMP	(R0)+,(R0)+	;Skip two header words
 11234						MOV	(R0),R1		;Get size
 11235						  BLE	78$		;  Bad size!
 11236						CMP	R1,#4000	;Arbitrary upper limit on size (is this OK?)
 11237						  BGT	78$
 11238						DEC	R1		;Round up, but exclude checksum
 11239						ASR	R1		;Convert to words
 11240						CLR	R2		;Initial checksum
 11241					71$:	ADD	(R0)+,R2	;Add in an entry
 11242						ADC	R2		;End around carry
 11243						ASL	R2		;Cycle left (stupid PDP-11, ROL rotates carry)
 11244						ADC	R2		;Part of cycle left, really!
 11245						SOB	R1,71$		;Repeat for each word in message
 11246						CMP	(R0),#177777	;If checksum is unspecified, all this was
 11247						  BEQ	79$		;  for nothing
 11248						CMP	R2,#177777	;Special fudge to checksum?
 11249						  BNE	72$		;  No
 11250						CLR	R2		;Yes, 177777->0
 11251					72$:	CMP	(R0),R2		;Check checksum
 11252						  BEQ	79$		;Good.
 11253					;We have a bad PUP packet.
 11254					78$:	br 79$	;;;FATAL			;Bitch and moan
 11255					;Return, good, bad, otherwise (like non-PUP packet)
 11256					79$:	RETURN
 11257					
 11258					.ENDC; DF PCKASB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 323
		QMP11 PAL[KL,SYS]	Page 5 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11259					; DTEINT, DTE10D Interrupt routines
 11260					
 11261					; DTEINT - INTERRUPT ROUTINE ENTERED ON DTE INTERRUPT
 11262					;
 11263					;
 11264					DTEINT:	CALL	1$			; USE CALL FOR REGISTER SAVE
 11265	136356	004737	136364			JSR	PC,1$
 11266	136362	000002				RTI				; RETURN FROM INT
 11267					
 11268					1$:	SAVRG				; SAVE REGS R3-R5
 11269	136364	004537	140242			JSR	R5,$SAVRG
 11270	136370	017703	020760			MOV	@.STDTE,R3		; GET DTE STATUS IN REG 3
 11271	136374	032703	120000			BIT	#TO10DN!TO10ER,R3	; TO10 COMPLETION?
 11272	136400	001402				BEQ	2$			; IF EQ NO
 11273						CALL	DTE10D			; GO TO THE CHECK ROUTINE
 11274	136402	004737	136444			JSR	PC,DTE10D
 11275	136406	032703	000202		2$:	BIT	#TO11DN!TO11ER,R3	; TO11 COMPLETION?
 11276	136412	001402				BEQ	4$			; IF EQ NO
 11277						CALL	DTE11D			; GO TO THE CHECK ROUTINE
 11278	136414	004737	136516			JSR	PC,DTE11D
 11279	136420	032703	004000		4$:	BIT	#TO11DB,R3		; IS IT DOORBELL INTERRUPT?
 11280	136424	001406				BEQ	6$			; IF EQ NO
 11281	136426	012737	000001	157136		MOV	#1,T11DBF		; YES, SET SOFTWARE DOORBELL
 11282	136434	012777	002000	020712		MOV	#INT11C,@.STDTE		; AND CLEAR DOORBEL INT
 11283					6$:	RETURN				; RESTORE AND RTI
 11284	136442	000207				RTS	PC
 11285					
 11286					; DTE10D - ROUTINE ENTERED AT COMPLETION OF XFER TO 10
 11287					;
 11288					;	Call with R3=Ending status.
 11289					;	If error status is seen, we leave dead message in the Q for
 11290					;		SND10 to restart.  (really, there should be a retry count)
 11291					;
 11292					DTE10D:	SAVVR				; SAVE REGS R0-R2
 11293	136444	004237	140266			JSR	R2,$SAVVR
 11294	136450	012777	050000	020676		MOV	#DON10C!ERR10C,@.STDTE	; RESET FLAGS IN DTE STATUS REG
 11295	136456	005037	157134			CLR	DTEBSY			; CLEAR THE DTEBSY FLAG NOW.
 11296	136462	013700	157052			MOV	TO10Q,R0		; BUFFER ADDRESS.
 11297	136466	001412				BEQ	5$			; Can't happen. BR if no message address.
 11298	136470	032703	020000			BIT	#TO10ER,R3		; WAS THIS AN ERROR RETURN?
 11299	136474	001007				BNE	5$			; BR if error.  Message remains in the Q.
 11300	136476	011037	157052			MOV	(R0),TO10Q		; REMOVE THE BUFFER BLOCK FROM QUEUE
 11301	136502	001002				BNE	4$			; NOT LAST ENTRY IN QUEUE
 11302	136504	005037	157054			CLR	TO10Q+2			; LAST ENTRY IN QUEUE, ZERO END POINTER
 11303					4$:	CALL	QGIVE			; GO RELEASE THE CORE BLOCK
 11304	136510	004737	136766			JSR	PC,QGIVE
 11305					5$:	RETURN				;
 11306	136514	000207				RTS	PC
 11307					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 324
		QMP11 PAL[KL,SYS]	Page 6 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11308					; DTE11D - COMPLETION OF TO11 TRANSFER FROM DTE
 11309					;
 11310					;	ENTERED FROM DTEINT ROUTINE.  R3 = DTE Status at Interrupt.
 11311					;
 11312					;		In case of transfer error, sender has been notified in
 11313					;		his ending status.  Sender will retry from the top.
 11314					;
 11315					;
 11316					DTE11D:	SAVVR				; SAVE REGS R0-R2
 11317	136516	004237	140266			JSR	R2,$SAVVR
 11318	136522	012777	000101	020624		MOV	#DON11C!ERR11C,@.STDTE	; Clear DONE and ERROR in DTE STATUS
 11319	136530	013700	157042			MOV	FR10Q,R0		; ADDRESS OF BUFFER BLOCK
 11320	136534	001416				BEQ	5$			; Discard interrupt if no msg block
 11321	136536	005037	157042			CLR	FR10Q			; CLEAR FROM DTE POINTER
 11322	136542	005002				CLR	R2			; If error, R2 = 0 for no-op
 11323	136544	032703	000002			BIT	#TO11ER,R3		; IS THE ERROR BIT ON TRANSFER SET
 11324	136550	001006				BNE	2$			; If error, branch to call $DTNOP (R2 = 0)
 11325					; NOW LOOK AT THE REQUEST WORD AND SEE WHERE DATA IS MEANT TO GO
 11326	136552	016002	000004			MOV	QREQ(R0),R2		; GET THE REQUEST WORD IN R2
 11327	136556	006302				ASL	R2			; DOUBLE FOR WORD POINTER
 11328	136560	020227	000016			CMP	R2,#REQMAX		; bounds test
 11329	136564	103012				BHIS	T11MSE			; br if out of bounds
 11330	136566	004772	136574		2$:	JSR	PC,@REQLST(R2)		; NOW GO TO THE SUBROUTINE
 11331					5$:	RETURN				;
 11332	136572	000207				RTS	PC
 11333					;
 11334					;
 11335	136574	136634			REQLST:	.WORD	$DTNOP		;no-op discard the message
 11336	136576	136634				.WORD	$ECHRY		;QECHRY - RESPONSE TO AN ECHO REQUEST
 11337	136600	136642				.WORD	$11ECH		;QECHRQ - REQUEST FOR AN ECHO
 11338	136602	136660				.WORD	$11ETH		;QENPKT - Request to send An EtherNet Packet
 11339	136604	136676				.WORD	$11ADR		;QENADR - REQUEST FROM 10 FOR ETHERNET ADDRESS
 11340	136606	136634				.WORD	$DTNOP		;eventually, dectape messages. now unimplemented
 11341	136610	136740				.WORD	$ENBCC		;QENBCC - Request to control broadcast packets
 11342		000016			REQMAX==.-REQLST
 11343					
 11344					T11MSE:	PUSH	R0			;save msg block address
 11345	136614	016046	000004			MOV	QREQ(R0),-(SP)		;save request type
 11346						PMSG	<\T11MSE=>
 11347	136620	104025				  $PMSG
 11348	136622	147146				  $$CLIT
 11349						POP	R0
 11350	136626	104035				PNTOCT				;PRINT Request type
 11351	136630	104031				PCRLF
 11352						POP	R0			;restore Msg addr & fall into $ECHRY
 11353					$DTNOP:					; no-op
 11354					$ECHRY:	CALL	QGIVE			; JUST FREE THE BLOCK
 11355	136634	004737	136766			JSR	PC,QGIVE
 11356						RETURN				; AND RETURN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 325
		QMP11 PAL[KL,SYS]	Page 6.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11357	136640	000207				RTS	PC
 11358					
 11359	136642	012760	000001	000004	$11ECH:	MOV	#QECHRY,QREQ(R0)	; MAKE PACKET AN ECHO RESPONSE
 11360						QUEUE	TO10Q			; AND QUEUE IT FOR 10
 11361	136650	004537	137502			JSR	R5,$QUEUE
 11362	136654	157052				.WORD	TO10Q
 11363						RETURN				;
 11364	136656	000207				RTS	PC
 11365					
 11366					$11ETH:	QUEUE	ENETQ			; QUEUE BUFFER BLOCK TO ETHERNET QUEUE
 11367	136660	004537	137502			JSR	R5,$QUEUE
 11368	136664	157046				.WORD	ENETQ
 11369	136666	103002				BCC	1$			; BRANCH IF NOT FIRST (ONLY) ENTRY
 11370						CALL	SNDEN			; OK, QUEUE IT FOR ETHERNET
 11371	136670	004737	136010			JSR	PC,SNDEN
 11372					1$:	RETURN
 11373	136674	000207				RTS	PC
 11374					
 11375					
 11376					$11ADR:	CALL	QGIVE			; GO FREE THE QUEUE ENTRY NOW
 11377	136676	004737	136766			JSR	PC,QGIVE
 11378	136702	012701	000010			MOV	#QHDRSZ+2,R1		; NOW WE WILL GET SHORT BLOCK
 11379						CALL	QGET			; GO GET THE SHORT BLOCK
 11380	136706	004737	137006			JSR	PC,QGET
 11381	136712	103411				BCS	1$			; Can't get such a block! He'll ask again
 11382	136714	013760	157032	000006		MOV	ENIHAD,QHDRSZ(R0)	; Store ethernet address.
 11383	136722	012760	000004	000004		MOV	#QENADR,QREQ(R0)	; SET RESPONSE CODE FOR 10
 11384						QUEUE	TO10Q			; QUEUE FOR 10
 11385	136730	004537	137502			JSR	R5,$QUEUE
 11386	136734	157052				.WORD	TO10Q
 11387					1$:	RETURN				; AND RETURN
 11388	136736	000207				RTS	PC
 11389					
 11390					;Here to set Ethernet broadcast packet control word.
 11391	136740	013702	157104		$ENBCC:	MOV	ENBCCF,R2		; get old control word to be returned
 11392	136744	016037	000006	157104		MOV	QHDRSZ(R0),ENBCCF	; set new control word
 11393	136752	010260	000006			MOV	R2,QHDRSZ(R0)		; put old control word in return packet
 11394						QUEUE	TO10Q			; and queue for the 10
 11395	136756	004537	137502			JSR	R5,$QUEUE
 11396	136762	157052				.WORD	TO10Q
 11397						RETURN
 11398	136764	000207				RTS	PC
 11399					
 11400	136766	016001	000002		QGIVE:	MOV	QSIZ(R0),R1		; GET PACKET SIZE IN R1
 11401	136772	010002				MOV	R0,R2			; MOV QUEUE ENTRY ADDRESS TO R2
 11402	136774	012700	157036			MOV	#FREEQ,R0		; AND ADDRESS OF FREEQ TO R0
 11403						CALL	$RLCB			; RELEASE THE MEMORY
 11404	137000	004737	137722			JSR	PC,$RLCB
 11405						RETURN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 326
		QMP11 PAL[KL,SYS]	Page 6.2 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11406	137004	000207				RTS	PC
 11407					
 11408					;QGET -  Get a free-core block.  Call with R1=Request size in bytes.
 11409					; Returns with Carry Set to signify no block available, or,
 11410					; Returns with Carry Clear, R0 = Block address.  QSIZ(R0) and QCHN(R0) setup.
 11411	137006	012700	157036		QGET:	MOV	#FREEQ,R0		; ADDRESS OF FREEQ LIST HEADER
 11412						CALL	$RQCB			; ALLOCATE BLOCK
 11413	137012	004737	140046			JSR	PC,$RQCB
 11414	137016	103405				BCS	1$			; BR if there's no block available
 11415	137020	005060	000000			CLR	QCHN(R0)		; CLEAR THE CHAIN WORD IN BLOCK
 11416	137024	010160	000002			MOV	R1,QSIZ(R0)		; SET BUFFER SIZE IN CORE BLOCK
 11417	137030	000241				CLC				; RETURN CARRY CLEAR
 11418					1$:	RETURN
 11419	137032	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 327
		QMP11 PAL[KL,SYS]	Page 7 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11420					; QMPCMD - ROUTINE CALLED FROM KLDCP WHEN 10 SENDS ITEM COUNT
 11421					;
 11422					;	ENTERED WITH:
 11423					;		R5 = 14 IN THE HIGH BYTE
 11424					;
 11425					QMPCMD:	CALL	$99
 11426	137034	004737	137044			JSR	PC,$99
 11427	137040	000137	107526			JMP	C10DON		; RETURN TO CONS11
 11428					
 11429					$99:	SAVVR			; SAVE REGS R0-R2
 11430	137044	004237	140266			JSR	R2,$SAVVR
 11431						PUSH	PS		; SAVE OLD PS
 11432	137054	012737	000340	177776		MOV	#PR7,PS		; AND SET NON-INTERRUPTIBLE STATUS
 11433	137062	032777	007777	020246		BIT	#7777,@.BC11	; Is there a transfer already in progress?
 11434	137070	001034				  BNE	QMPCXT		;   Yes, the '10 goofed. We'll just ignore it and
 11435									;	let the current transfer finish.
 11436									;   ***	If the DTE is every real hung, we lose!
 11437	137072	013701	147576			MOV	$ECMD+2,R1	; WORD COUNT FROM CMD INCLUDES REQUEST
 11438	137076	006301				ASL	R1		; MAKE BYTE COUNT FOR CORE ALLOCATION
 11439	137100	062701	000004			ADD	#QHDRSZ-2,R1	; ADD ROOM FOR HEADER TO REQUEST SIZE
 11440	137104	010137	157034			MOV	R1,QMPRQS	; save size of request in case we need QMPRTY
 11441					QMPRY1:	CALL	QGET		; REQUEST MEMORY
 11442	137110	004737	137006			JSR	PC,QGET
 11443	137114	103422				BCS	QMPCXT		; BR if there is no buffer available.
 11444	137116	005037	157034			CLR	QMPRQS		; clear request size to avoid hassle in QMPRTY
 11445	137122	010037	157042			MOV	R0,FR10Q	; SET HEADER ADDRESS IN FR10Q
 11446	137126	062700	000004			ADD	#QHDRSZ-2,R0	; READ REQUEST AND DATA TO QUEUE ENTRY
 11447	137132	010077	020204			MOV	R0,@.T11AD	; SET BUFFER ADDRESS IN DTE REG
 11448	137136	162701	000004			SUB	#QHDRSZ-2,R1	; REDUCE COUNT FOR HEADER SIZE
 11449	137142	006201				ASR	R1		; MAKE WORD COUNT AGAIN FOR DTE XFER
 11450	137144	005401				NEG	R1		; MAKE TWO'S COMPLEMENT COUNT
 11451	137146	042701	170000			BIC	#170000,R1	; CLEAR HIGH BITS FROM COUNT
 11452	137152	052701	100000			BIS	#INT10,R1	; SET BIT TO INTERRUPT 10 WHEN DONE
 11453	137156	010177	020154		 	MOV	R1,@.BC11	; AND SET BYTE COUNT IN DTE REG
 11454					QMPCXT:	POP	PS		; RESTORE RUN PRIORITY
 11455	137166	000207				RTS	PC
 11456					;
 11457					;If there was no buffer space available when the 10 made its request,
 11458					;the QMPCMD routine leaves QMPRQS set to the size of the request.
 11459					;QMPRTY is called from SND10, each time through the command loop.
 11460					
 11461					QMPRTY:	SAVVR
 11462	137170	004237	140266			JSR	R2,$SAVVR
 11463						PUSH	PS
 11464	137200	012737	000340	177776		MOV	#PR7,PS		; AND SET NON-INTERRUPTIBLE STATUS
 11465	137206	013701	157034			MOV	QMPRQS,R1
 11466	137212	001763				BEQ	QMPCXT
 11467	137214	000735				BR	QMPRY1
 11468					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 328
		QMP11 PAL[KL,SYS]	Page 8 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11469					; SND10 -  ROUTINE TO QUEUE BLOCK FOR XFER TO 10
 11470					;
 11471					;	Called From Console Loop via JSR PC,SND10
 11472					; N.B.	ROUTINE RUNS INTERRUPTABLE!!!
 11473					;
 11474					SND10:	SAVVR			; SAVE REGS R0-R2
 11475	137216	004237	140266			JSR	R2,$SAVVR
 11476						PUSH	PS
 11477	137226	012737	000340	177776		MOV	#PR7,PS		; set us as non-interuptable.
 11478	137234	013700	157052			MOV	TO10Q,R0	; Get address of next message to 10
 11479	137240	001446				BEQ	3$		; Nothing in queue. Return
 11480	137242	005737	157134			TST	DTEBSY		; IS THE DTE CURRENTLY BUSY?
 11481	137246	001403				BEQ	5$		; BR if not busy
 11482	137250	005237	157132			INC	DTEBCT		; increment the busy count
 11483	137254	001040				BNE	3$		; if it counts out, restart pending xfer
 11484	137256	005037	157132		5$:	CLR	DTEBCT		; reset the busy count
 11485	137262	016001	000002			MOV	QSIZ(R0),R1	; GET THE BYTE COUNT FROM BLOCK COUNTER
 11486	137266	162701	000004			SUB	#QHDRSZ-2,R1	; SUBTRACT THE HEADER SIZE (INCLUDE REQUEST)
 11487	137272	003002				BGT	6$		; try not to be rediculous!
 11488	137274	012701	000002			MOV	#2,R1		; change a negative or zero count to positive.
 11489	137300	006201			6$:	ASR	R1		; CONVERT TO WORD COUNT FOR DTE XFER
 11490	137302	010137	157076			MOV	R1,COUN10	; SET COUNT FOR DEPOSIT IN 10 MEMORY
 11491	137306	005401				NEG	R1		; MAKE TWO'S COMPLEMENT FOR XFER
 11492	137310	062700	000004			ADD	#QHDRSZ-2,R0	; POINT TO REQUEST WORD PRECEDING DATA
 11493	137314	010077	020020			MOV	R0,@.T10AD	; SET WORD ADDRESS IN DTE REGISTER
 11494	137320	010177	020010			MOV	R1,@.BC10	; SET WORD COUNT IN DTE REGISTER
 11495	137324	104055				SETFLG			; SET DTEBSY FLAG SO WE DON'T TRY TO WRITE MORE
 11496	137326	157134				  DTEBSY		; UNTIL WE ARE FINISHED WITH THIS ONE
 11497	137330	011637	177776			MOV	(SP),PS		; Restore interrupts. We're done with Q & DTE
 11498	137334	012737	004000	147424	.IIF NE EPTREL, MOV	#XEPT!PRTOFF,$TADSP	; SET ADDR MODE FOR NXT EXDEP
 11499	137342	104106				DPOST			; EMT CALL TO DEPOSIT IN 10 MEMORY
 11500	137344	000460				  $DTQMP		; ADDRESS IN 10 MEMORY
 11501	137346	157076				  COUN10		; ADDRESS OF PARAMETER STRING
 11502	137350	012777	000400	017776		MOV	#TO10DB,@.STDTE	; RING THE 10'S CHIMES
 11503					3$:	POP	PS
 11504						CALL	QMPRTY		; See if need a retry of QGET for a TO11 command
 11505	137362	004737	137170			JSR	PC,QMPRTY
 11506						RETURN			; AND RETURN
 11507	137366	000207				RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 329
		QMP11 PAL[KL,SYS]	Page 9 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11508					; QINI - ROUTINE TO INITIALIZE QUEUE STRUCTURES
 11509		003000			FREEAD==3000
 11510		020000			FREESZ==20000
 11511		023000			FREEND==FREEAD+FREESZ		;of course.
 11512					
 11513					;	Called by
 11514					;	JSR	PC,QINI		;Clear all queues. Initialize free memory pool.
 11515					
 11516					QINI:	SAVVR			; SAVE R0-R2
 11517	137370	004237	140266			JSR	R2,$SAVVR
 11518					
 11519	137374	012700	157036			MOV	#FREEQ,R0	; ADDRESS OF FREEQ LISTHEAD
 11520	137400	012701	003000			MOV	#FREEAD,R1	; ADDRESS OF free pool beginning
 11521					
 11522	137404	010137	157110			MOV	R1,EN0BUF	; RESERVE FIRST OF FREE CORE
 11523	137410	062701	001130			ADD	#EN0BSZ*2,R1	; FOR ETHERNET INPUT BUFFER(S)
 11524	137414	010137	157112			MOV	R1,EN0BUF+2	; MUST DOUBLE BUFFER ETHERNET INPUT
 11525	137420	062701	001130			ADD	#EN0BSZ*2,R1
 11526					
 11527	137424	010120				MOV	R1,(R0)+	; Set address of free block in list head (FREEQ)
 11528	137426	005010				CLR	(R0)		; CLEAR SECOND WORD (Looks like a zero size blk)
 11529	137430	005021				CLR	(R1)+		; FREEQ point to a single block. (no link out)
 11530	137432	012711	020000			MOV	#FREESZ,(R1)	; set size of the single free block.
 11531	137436	162711	002260			SUB	#EN0BSZ*4,(R1)	; adjust size to account for EN buffers.
 11532					
 11533						QCLR	FR10Q		; CLEAR THE FR10Q
 11534	137442	004537	137466			JSR	R5,$QCLR
 11535	137446	157042				.WORD	FR10Q
 11536						QCLR	TO10Q		; CLEAR THE TO10Q
 11537	137450	004537	137466			JSR	R5,$QCLR
 11538	137454	157052				.WORD	TO10Q
 11539						QCLR	ENETQ		; CLEAR THE ETHERNET QUEUE
 11540	137456	004537	137466			JSR	R5,$QCLR
 11541	137462	157046				.WORD	ENETQ
 11542					
 11543					.IF DF FSCASB
 11544						CLR	WUSED		; Initialize bugtrap counts
 11545						CLR	NGETS
 11546						CLR	NGIVES
 11547						MOV	#1,BFREE	; One BIG block
 11548					.ENDC;DF FSCASB
 11549					
 11550						RETURN			;
 11551	137464	000207				RTS	PC
 11552					
 11553					; $QCLR - QUEUE RESET ROUTINE
 11554					;
 11555					;	CALLED AS:		JSR	R5,$QCLR
 11556					;				.WORD	QPB
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 330
		QMP11 PAL[KL,SYS]	Page 9.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11557					;	WHERE QPB IS QUEUE PARAMETER BLOCK
 11558					;
 11559					$QCLR:	PUSH	R0		; SAVE R0
 11560	137470	012500				MOV	(R5)+,R0	; GET QUEUE PARAMETER BLOCK ADDRESS
 11561	137472	005020				CLR	(R0)+		; CLEAR POINTER TO OLDEST ENTRY
 11562	137474	005020				CLR	(R0)+		; AND POINTER TO NEWEST ENTRY
 11563						POP	R0		; RESTORE R0
 11564	137500	000205				RTS	R5
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 331
		QMP11 PAL[KL,SYS]	Page 10 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11565					; $QUEUE - GENERALIZED QUEUE ROUTINE
 11566					;
 11567					; CALLED AS:		JSR	R5,$QUEUE
 11568					;			.WORD	QPB
 11569					;		Where
 11570					;		QPB = the address of the Queue Parameter Block, and
 11571					;		R0 = the Address of the new Queue item.
 11572					;
 11573					;		The new Queue item is:
 11574					;			.WORD	CHAIN POINTER
 11575					;			.WORD	BYTE COUNT (INCLUDES QHDRSZ BYTES FOR HEADER)
 11576					;			.WORD	REQUEST IDENTIFIER
 11577					;			.BYTES	DATA
 11578					;
 11579					;		and the Queue Parameter Block is 
 11580					;			.WORD	POINTER TO OLDEST ENTRY IN QUEUE
 11581					;			.WORD	POINTER TO NEWEST ENTRY IN QUEUE
 11582					;
 11583					;		Routine returns with Carry set if you have just placed
 11584					;		the first item in an empty queue.
 11585					;
 11586					$QUEUE:	PUSH	R2		; SAVE R2 IN STACK
 11587	137504	012502				MOV	(R5)+,R2	; ADDRESS OF QUEUE POINTER BLOCK TO R2
 11588	137506	005010				CLR	(R0)		; CLEAR CHAIN WORD IN NEW ENTRY
 11589	137510	005712				TST	(R2)		; IS QUEUE EMPTY
 11590	137512	001004				BNE	1$		; IF NE NO, QUEUE IS NOT EMPTY
 11591	137514	010022				MOV	R0,(R2)+	; YES, EMPTY - SET ENTRY ADDRESS
 11592	137516	010022				MOV	R0,(R2)+	; AND SET NEWEST ENTRY POINTER
 11593	137520	000261				SEC			; SET CARRY, FIRST AND ONLY ENTRY IN QUEUE
 11594	137522	000405				BR	2$		; NOW RETURN
 11595	137524	010072	000002		1$:	MOV	R0,@2(R2)	; CHAIN ENTRY TO CURRENT NEWEST ENTRY
 11596	137530	010062	000002			MOV	R0,2(R2)	; AND MAKE IT NEWEST ENTRY
 11597	137534	000241				CLC			; CLEAR CARRY, NOT ONLY ENTRY IN QUEUE
 11598					2$:	POP	R2		; RESTORE R2
 11599	137540	000205				RTS	R5		; RETURN VIA R5
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 332
		QMP11 PAL[KL,SYS]	Page 11 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11600					; QMPINI - ROUTINE TO INITIALIZE INTERRUPT ADDRESSES ETC.
 11601					;
 11602					;	CALLED AS:		JSR	PC,QMPINI
 11603					;
 11604					QMPINI:	SAVAL			; SAVE REGS R0-R5
 11605	137542	004737	140200			JSR	PC,$SAVAL
 11606						PUSH	PS		; SAVE CALLING PRIORITY
 11607	137552	012702	000340			MOV	#PR7,R2		; GET PRIORITY SEVEN IN R2
 11608	137556	010237	177776			MOV	R2,PS		; SET PRIORITY SEVEN NOW
 11609	137562	012701	000774			MOV	#774,R1		; GET ADDRESS OF DTE INTERRUPT VECTOR
 11610	137566	012721	136356			MOV	#DTEINT,(R1)+	; SET DTE INTERRUPT VECTOR ADDRESS
 11611	137572	010221				MOV	R2,(R1)+	; AND INTERRUPT PRIORITY SEVEN
 11612	137574	012777	037776	017516		MOV	#37776,@.DELAY	; INITIAL DELAY COUNT
 11613	137602	052777	000040	017544		BIS	#INTRON,@.STDTE	; SET INTERRUPTS ON
 11614					;
 11615	137610	012701	000400			MOV	#400,R1		; GET ETHERNET INTERRUPT VECTOR ADDRESS
 11616	137614	012721	135676			MOV	#ENOINT,(R1)+	; SET INTERRUPT DISPACH ADDR IN VECTOR
 11617	137620	010221				MOV	R2,(R1)+	; AND INTERRUPT PRIORITY SEVEN
 11618	137622	012721	136102			MOV	#ENIINT,(R1)+	; SET INTERRUPT DISPACH ADDR IN VECTOR
 11619	137626	010221				MOV	R2,(R1)+	; AND INTERRUPT PRIORITY SEVEN
 11620	137630	012721	135676			MOV	#ENOINT,(R1)+	; SET INTERRUPT DISPATCH ADDR IN VECTOR
 11621	137634	010221				MOV	R2,(R1)+	; AND SET INTERRUPT PRIORITY SEVEN
 11622	137636	013737	160036	157032		MOV	ENIADR,ENIHAD	; GET THE ETHERNET ADDRESS
 11623	137644	105137	157032			COMB	ENIHAD		; COMPLEMENT FOR READING
 11624					;
 11625						CALL	QINI		; INITIALIZE MEMORY AND QUEUES
 11626	137650	004737	137370			JSR	PC,QINI
 11627					;
 11628	137654	012700	157056			MOV	#EN0DLY,R0	; ADDRESS OF DELAY ARRAY FOR EN0
 11629	137660	012701	000010			MOV	#10,R1		; MAXIMUM NUMBER OF RETRYS
 11630	137664	012702	000200			MOV	#200,R2		; MAXIMUM DELAY
 11631	137670	010220			1$:	MOV	R2,(R0)+	; PUT DELAY IN TABLE
 11632	137672	006202				ASR	R2		; SHIFT IT RIGHT
 11633	137674	077103				SOB	R1,1$		; LOOP AND FILL TABLE
 11634					;
 11635	137676	005003				CLR	R3		; Select first buffer
 11636	137700	010337	157106			MOV	R3,EN0IND
 11637						CALL	ENISET		; Setup to read first packet
 11638	137704	004737	136270			JSR	PC,ENISET
 11639	137710	005037	157104			CLR	ENBCCF		; DISABLE PASSING EN BROADCAST PACKETS TO 10
 11640					;
 11641						POP	PS		; RESTORE ENTRY PRIORITY
 11642						RETURN
 11643	137720	000207				RTS	PC
 11644					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 333
		QMP11 PAL[KL,SYS]	Page 12 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11645					; RQCB/RLCB: first fit dynamic core allocation routines
 11646					;
 11647					; data structures
 11648					;
 11649					; Free block list header:
 11650					;
 11651					; 	freehd:	.word	next	; pointer to next free block or zero
 11652					;		.word	0	; always zero (looks like a too-small block)
 11653					;
 11654					; Free block:
 11655					;
 11656					;	freebk:	.word	next	; pointer to next free block or zero
 11657					;		.word	size	; size of block in bytes
 11658					;
 11659					; Used block:  User pointer to the free block addresses "usedbk" below.
 11660					;
 11661					;		.word	size	; size of block in bytes (and even number)
 11662					;	usedbk:	.word	data	; Size-2 bytes of user data are permitted
 11663					;
 11664					; 	The free block list is ordered by the core address of the blocks
 11665					; 	themselves.  This is so block agglomeration can be performed with
 11666					;	little overhead.
 11667					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 334
		QMP11 PAL[KL,SYS]	Page 13 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11668					; $RLCB - ReLease Core Block
 11669					;
 11670					; Call this subroutine to release a core block to the free list.
 11671					; The free list is searched until the proper slot is found.  The Block
 11672					; is merged into the free list.  If the block being released is adjacent
 11673					; to other free blocks, then those blocks are agglomerated and the new block
 11674					; is merged into the free list.
 11675					;
 11676					; INPUTS:
 11677					;	R0 = ADDRESS OF FREE BLOCK LIST HEAD
 11678					;	R2 = ADDRESS OF BLOCK TO RELEASE.
 11679					;
 11680					; OUTPUTS:
 11681					;	NONE
 11682					;
 11683					$RLCB:	SAVRG			; SAVE NON-VOLATILE REGISTERS
 11684	137722	004537	140242			JSR	R5,$SAVRG
 11685	137726	014201				MOV	-(R2),R1	; Point to start of block. Get size
 11686	137730	003445				BLE	99$		; A non-positive size is unlikely and undesirable
 11687	137732	032701	000001			BIT	#1,R1		; An odd size is likewise undesirable
 11688	137736	001042				BNE	99$		; So, we bomb out.
 11689	137740	022702	003000			CMP	#FREEAD,R2	; Make sure free block is in bounds
 11690	137744	101037				BHI	99$		; BR if out of bounds.
 11691	137746	010103				MOV	R1,R3		; Copy length of this block to R3
 11692	137750	060203				ADD	R2,R3		; compute end of this block
 11693	137752	022703	023000			CMP	#FREEND,R3	; compare to top of free storage
 11694	137756	103432				BLO	99$		; BR if out of bounds.
 11695	137760	011003			1$:	MOV	(R0),R3		; GET ADDRESS OF NEXT FREE BLOCK
 11696	137762	001404				BEQ	2$		; IF EQ THEN END OF CHAIN
 11697	137764	020203				CMP	R2,R3		; COMPARE ADDRESSES
 11698	137766	103402				BLO	2$		; IF LO THEN WE FOUND SLOT
 11699	137770	010300				MOV	R3,R0		; SET NEW PREVIOUS ADDRESS
 11700	137772	000772				BR	1$		; GO AGAIN
 11701					
 11702					;here, R0 is address of previous block.  R3 is address of next block.
 11703	137774	010312			2$:	MOV	R3,(R2)		; ASSUME NO AGGLOMERATION. Link out of new blk.
 11704	137776	010204				MOV	R2,R4		; CALCULATE ADDRESS OF NEXT BLOCK
 11705	140000	060104				ADD	R1,R4		; ADD IN BLOCK SIZE
 11706					.IF DF FSCASB
 11707						SUB	R1,WUSED	; Bugtrap: Decrement number of words in use
 11708						INC	BFREE		; Assuming no agglomeration
 11709					.ENDC;DF FSCASB
 11710	140002	020304				CMP	R3,R4		; COMPARE BLOCK ADDRESSES
 11711	140004	001002				  BNE	3$		; IF NE DO NOT MERGE BLOCKS
 11712	140006	012312				MOV	(R3)+,(R2)	; SET NEW FORWARD LINK
 11713	140010	061301				ADD	(R3),R1		; ADJUST SIZE
 11714					.IIF DF FSCASB,	DEC	BFREE	; We merged one here.
 11715	140012	010210			3$:	MOV	R2,(R0)		; ASSUME NO AGGLOMERATION
 11716	140014	010004				MOV	R0,R4		; CALCULATE ADDRESS OF NEXT BLOCK
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 335
		QMP11 PAL[KL,SYS]	Page 13.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11717	140016	066004	000002			ADD	2(R0),R4	; ADD IN BLOCK SIZE
 11718	140022	020204				CMP	R2,R4		; COMPARE ADDRESSES
 11719	140024	001004				  BNE	4$		; IF NE DO NOT MERGE
 11720	140026	011210				MOV	(R2),(R0)	; SET NEW FORWARD LINK
 11721	140030	066001	000002			ADD	2(R0),R1	; ADJUST SIZE
 11722	140034	010002				MOV	R0,R2		; SET NEW BASE ADDRESS OF BLOCK
 11723					.IIF DF FSCASB,	DEC	BFREE	; We merged one here.
 11724	140036	010162	000002		4$:	MOV	R1,2(R2)	; SET SIZE OF BLOCK
 11725					.IIF DF FSCASB,	INC	NGIVES	; Count instances
 11726						RETURN			;
 11727	140042	000207				RTS	PC
 11728					
 11729	140044	104000			99$:	FATAL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 336
		QMP11 PAL[KL,SYS]	Page 14 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11730					; $RQCB - REQUEST CORE BLOCK
 11731					;
 11732					; Call this subroutine to request a core block from the free list.
 11733					; The selection is made on the first fit basis.
 11734					;
 11735					; INPUTS:
 11736					;	R0 = ADDRESS OF FREE BLOCK LIST HEAD
 11737					;	R1 = Requested size of block in bytes.
 11738					;
 11739					;	The size of the request will be increased by 2 and rounded up to
 11740					;	be an even number of bytes.
 11741					;
 11742					; OUTPUTS:
 11743					;	C=1 IF REQUEST CANNOT BE FULFILLED
 11744					;	C=0 IF REQUEST IS SATISFIED. R0 = ADDRESS OF REQUESTED CORE BLOCK.
 11745					;				     R1 = Requested size rounded up to even #
 11746					;
 11747					$RQCB:	SAVRG			; SAVE NONVOLATILE REGISTERS
 11748	140046	004537	140242			JSR	R5,$SAVRG
 11749	140052	005701				TST	R1		; make sure request is positive.
 11750	140054	003450				BLE	99$		; can't have idiots around here.
 11751	140056	062701	000003			ADD	#3,R1		; Add 2 and round up to next word boundary
 11752	140062	042701	000001			BIC	#1,R1		; Clear excess odd bit
 11753					;R0 = address of "previous", R3 = address of "current"
 11754	140066	011003			2$:	MOV	(R0),R3		; Get address of the next free block.
 11755	140070	001440				BEQ	9$		; BR if end of the list.  No block available.
 11756	140072	020163	000002			CMP	R1,2(R3)	; Is the block big enough?
 11757	140076	101402				BLOS	6$		; BR if the block is large enough.
 11758	140100	010300				MOV	R3,R0		; Advance R0 to point to this block
 11759	140102	000771				BR	2$		; and go look at the next block.
 11760					
 11761					;Here R3 = address of a desirable block.   R0 is the predecessor
 11762					6$:	PUSH	R1		;Save user's size request (+2)
 11763	140106	016302	000002			MOV	2(R3),R2	;Get the size of the block we found
 11764	140112	160102				SUB	R1,R2		;Reduce it by the size of this request
 11765	140114	022702	000020			CMP	#20,R2		;Is there enough left to be worth splitting?
 11766	140120	103004				BHIS	7$		;BR if fragment too small to split.
 11767	140122	010263	000002			MOV	R2,2(R3)	;Store size of remainder.
 11768	140126	060203				ADD	R2,R3		;Calculate address of piece to return now
 11769	140130	000403				BR	8$		;R3=address to return. R1=Size.
 11770					
 11771	140132	011310			7$:	MOV	(R3),(R0)	;Here for no split. LINK PREVIOUS TO NEXT
 11772	140134	016301	000002			MOV	2(R3),R1	;this is the actual size of this block
 11773					.IIF DF FSCASB,	DEC	BFREE	;One less thing on free list
 11774	140140	010300			8$:	MOV	R3,R0		;Copy address block to R0
 11775	140142	010120				MOV	R1,(R0)+	;Store size of the block in the block.
 11776	140144	022703	003000			CMP	#FREEAD,R3	; Make sure free block is in bounds
 11777	140150	101012				BHI	99$		; BR if out of bounds.
 11778	140152	060103				ADD	R1,R3		; compute end of this block
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 337
		QMP11 PAL[KL,SYS]	Page 14.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11779	140154	022703	023000			CMP	#FREEND,R3	; compare to top of free storage
 11780	140160	103406				BLO	99$		; BR if out of bounds.
 11781					.IF DF FSCASB
 11782						ADD	R1,WUSED	;Bugtrap: Update number of words used
 11783						INC	NGETS		;	  Increment number of requests
 11784					.ENDC; DF FSCASB
 11785						POP	R1		;User's request size (+2)
 11786	140164	005741				TST	-(R1)		;return in R1 the apparent block size.
 11787	140166	000241				CLC			; CLEAR CARRY
 11788						RETURN
 11789	140170	000207				RTS	PC
 11790					
 11791	140172	000261			9$:	SEC			; SET CARRY
 11792						RETURN			;
 11793	140174	000207				RTS	PC
 11794					
 11795	140176	104000			99$:	FATAL
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 338
		QMP11 PAL[KL,SYS]	Page 15 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11796					; $SAVAL, $SAVVR, $SAVRG  Register Save and Restore Co-routines
 11797					;
 11798					; $SAVAL - SAVE AND RESTORE R0-R5
 11799					;
 11800					; THIS MODULE IS ENTERED VIA A "JSR	PC,$SAVAL" TO SAVE AND
 11801					; SUBSEQUENTLY RESTORE REGISTERS R0 THROUGH R5.  AFTER STORING THE
 11802					; REGISTER CONTENST ON THE STACK A CO-ROUTINE CALL IS MADE TO
 11803					; THE CALLING ROUTINE.  A SUBSEQUENT "RTS	PC" CAUSES THIS
 11804					; SUBROUTINE TO RESTORE ALL REGISTERS AND EXIT VIA AN "RTS	PC".
 11805					;
 11806					; ALL REGISTER CONTENTS ARE PRESERVED.
 11807					;
 11808					$SAVAL:	PUSH	R4
 11809						PUSH	R3
 11810						PUSH	R2
 11811						PUSH	R1
 11812						PUSH	R0		; SAVE R4-R0
 11813	140212	016646	000012			MOV	12(SP),-(SP)	; COPY RETURN ADDR
 11814	140216	010566	000014			MOV	R5,14(SP)	; SAVE R5
 11815						CALL	@(SP)+		; CALL THE CALLER
 11816	140222	004736				JSR	PC,@(SP)+
 11817						POP	R0
 11818						POP	R1
 11819						POP	R2
 11820						POP	R3
 11821						POP	R4
 11822						POP	R5		; RESTORE R0-R5
 11823						RETURN			; AND RETURN
 11824	140240	000207				RTS	PC
 11825					;
 11826					; $SAVRG - SAVE AND RESTORE NONVOLATILE REGISTERS, 3,4,5
 11827					;
 11828					; CALLED AS:		JSR	R5,$SAVRG
 11829					;
 11830					$SAVRG:	PUSH	R4
 11831						PUSH	R3		; SAVE R4,R3
 11832						PUSH	R5		; PUT RETURN ADDRESS ON STACK
 11833	140250	016605	000006			MOV	6(SP),R5	; RETRIEVE REAL R5
 11834						CALL	@(SP)+		; CALL THE CALLER
 11835	140254	004736				JSR	PC,@(SP)+
 11836						POP	R3
 11837						POP	R4
 11838						POP	R5		; RESTORE R5
 11839						RETURN
 11840	140264	000207				RTS	PC
 11841					
 11842					; $SAVVR - SAVE AND RESTORE VOLATILE REGS - R0-R2
 11843					;
 11844					; CALLED AS:		JSR	R2,$SAVVR
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 339
		QMP11 PAL[KL,SYS]	Page 15.1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11845					;
 11846					$SAVVR:	PUSH	R1
 11847						PUSH	R0		; SAVE R1 AND R0
 11848						PUSH	R2		; SAVE RETURN ADDRESS
 11849	140274	016602	000006			MOV	6(SP),R2	; RESTORE R2
 11850						CALL	@(SP)+		; CALL THE CALLER
 11851	140300	004736				JSR	PC,@(SP)+
 11852						POP	R0
 11853						POP	R1
 11854						POP	R2		; RESTORE REGS
 11855						RETURN			;
 11856	140310	000207				RTS	PC
 11857					;
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 340
		KLDCP PAL[KL,SYS]	Page 5.8 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11858					
 11859								;File loading and command functions
 11860					.INSRT	APT11.PAL		
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 341
		APT11 PALII[KL,SYS]	Page 1 	DSKDMP BOOTSTRAP LOADING SERVICE, JBR 23-MAY-76 - LDBOOT

 11861				COMMENT ⊗   VALID 00014 PAGES
 11862				C REC  PAGE   DESCRIPTION
 11863				C00001 00001
 11864				C00003 00002	.SBTTL	APT10 PDP-11 PROCESS, 13-AUG-75
 11865				C00005 00003	DAHLPD=.
 11866				C00007 00004	ACTBCK:	PMSG	<?CKSUM>
 11867				C00008 00005	.SBTTL	COMMUNICATIONS ROUTINES
 11868				C00010 00006	7$:	TTICHR			GET CONTROL SEQUENCE CHARACTER
 11869				C00011 00007	CMERTB:	CMER1
 11870				C00012 00008	$COMSND:MOV	#COUTBF,R5
 11871				C00014 00009	$CMRTRY:MOV	#COUTBF-4,R0	SETUP MESSAGE POINTER
 11872				C00016 00010	$COMLIN:MOV	#CINBF-4,R1	START BUFFER ADDRESS
 11873				C00018 00011	3$:	INC	R1		NULL TO END BUFFER
 11874				C00020 00012	44$:	TST	R0		DID CHECKSUM COMPUTE TO 0 ?
 11875				C00021 00013	$COMENQ:COMCLR			CLEAR COMMUNICATIONS
 11876				C00023 00014	$COMCLR:CLR	ENQFLG
 11877				C00025 ENDMK
 11878					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 342
		APT11 PALII[KL,SYS]	Page 2 	APT10 PDP-11 PROCESS, 13-AUG-75

 11879					.SBTTL	APT10 PDP-11 PROCESS, 13-AUG-75
 11880					
 11881					.IF DF MONASB
 11882					ACTFIL:	CMP	#5,LDCNTL	;LOADING ".BIN" ?
 11883						BNE	1$
 11884						MOV	#1,LDCNTL	;YES, ACT10 CONVERTS TO ".A11"
 11885					1$:	COMENQ			;REQUEST APT10 SERVICE
 11886						MOV	#$INBUF,R0
 11887						COMCMD			;SEND COMMAND TO REMOTE
 11888						BCS	2$		;C-BIT SET, FILE NOT FOUND
 11889						CLR	ARETRY		;CLEAR RETRY COUNTER
 11890						BR	ACTLD1		;GO TO LOAD PROCESS
 11891					2$:	JMP	$NONXF
 11892					.ENDC
 11893					
 11894					ACTLD2:
 11895					.IF DF MONASB
 11896						TST	DEVTYP
 11897						BMI	1$		;ACT10
 11898					.ENDC
 11899	140312	000137	131150			JMP	LLD2		;DECTAPE/RP04
 11900					.IF DF MONASB
 11901					1$:	COMACK			;ACK PREVIOUS LINE
 11902						BCS	ACTEOF		;C-BIT SET, EOF
 11903						CLR	ARETRY		;CLEAR RETRY COUNTER
 11904					
 11905					ACTLD1:	INC	DEVLC		;COUNT LINE
 11906						MOV	DEVLC,SWR	;DISPLAY
 11907						TST	LDCNTL		;DOING A "HELP" ?
 11908						BPL	1$		;NO
 11909					.ENDC
 11910		140316			DAHLP=.
 11911	140316	005737	151120			TST	DIAFLG		;DOING DIAMON
 11912	140322	001407				BEQ	30$		;NO
 11913	140324	005737	150724			TST	DEVLC		;YES, FIRST LINE ?
 11914	140330	001002				BNE	31$		;NO
 11915	140332	000137	112226			JMP	DIAFND		;YES, DIAMON FILE FOUND
 11916	140336	000137	112262		31$:	JMP	DIARNL		;DIAMON READ NEW LINE
 11917	140342	005737	147624		30$:	TST	IFILEF		;DOING AN INDIRECT FILE ?
 11918	140346	001402				BEQ	4$
 11919	140350	000137	140560			JMP	IFILEP		;YES, STORE INPUT
 11920	140354	104055			4$:	SETFLG
 11921	140356	150722				HLPPNT			;NORMAL BACKSLASHES
 11922	140360	012700	150500			MOV	#$INBUF,R0	;YES, PRINT INPUT LINE
 11923					.IF DF MONASB
 11924						TST	DEVTYP
 11925						BPL	41$
 11926						MOV	#CINBF,R0
 11927					.ENDC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 343
		APT11 PALII[KL,SYS]	Page 2.1 	APT10 PDP-11 PROCESS, 13-AUG-75

 11928	140364	104024			41$:	PNTAL
 11929	140366	005037	150722			CLR	HLPPNT
 11930	140372	000747				BR	ACTLD2		;REPEAT TILL "EOT"
 11931					
 11932	140374	000137	131306		1$:	JMP	LDPROC		;GO TO LOAD PROCESS
 11933					
 11934					.LIF DF MONASB
 11935					ACTEOF:	COMCLR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 344
		APT11 PALII[KL,SYS]	Page 3 	APT10 PDP-11 PROCESS, 13-AUG-75

 11936		140400			DAHLPD=.
 11937	140400	005737	151120			TST	DIAFLG		;DOING DIAMON ?
 11938	140404	001402				BEQ	10$		;NO
 11939	140406	000137	112362			JMP	DIAEOF		;YES, SEND DIAMON END OF FILE
 11940	140412	005737	147624		10$:	TST	IFILEF		;INDIRECT/DOUBLE INDIRECT ?
 11941	140416	001002				BNE	21$		;YES
 11942	140420	104031				PCRLF			;NO, JUST HELP
 11943	140422	000422				BR	23$		;BACK TO CONSOLE
 11944					
 11945	140424	005737	147620		21$:	TST	JFILEF		;DOUBLE INDIRECT ?
 11946	140430	100012				BPL	22$		;NO
 11947	140432	105737	147620			TSTB	JFILEF		;PRESENT JUST INDIRECT ?
 11948	140436	001407				BEQ	22$		;YES
 11949	140440	105037	147620			CLRB	 JFILEF		;SET DONE WITH READING "J"
 11950	140444	012737	010000	147616		MOV	#TOUTBF+5000,JFINP	;SET "J" POINTER TO BEGINNING
 11951	140452	000137	100106			JMP	CONSL		;START RUNNING
 11952					
 11953	140456	012737	003000	147622	22$:	MOV	#TOUTBF,IFINP	;SET POINTER TO BEGINNING
 11954	140464	105037	147624			CLRB	IFILEF
 11955	140470	000137	100014		23$:	JMP	$CONSL		;GO PROCESS INDIRECT FILE
 11956					
 11957					ACTDON:
 11958					.IF DF MONASB
 11959						COMACK			;ACK TRANSFER BLOCK
 11960						BCC	3$
 11961					.ENDC
 11962		140474			DADONE=.
 11963	140474	005737	150726			TST	SRTFLG		;SELF START ?
 11964	140500	001402				BEQ	1$
 11965	140502	000137	113216			JMP	$$GO		;YES
 11966	140506	000137	100014		1$:	JMP	$CONSL		;NO
 11967					
 11968					3$:	PMSG	<?EOF,ERR>
 11969	140512	104025				  $PMSG
 11970	140514	147157				  $$CLIT
 11971	140516	000137	100004		$$C2:	JMP	$CNTLC
 11972					
 11973					ACTLDC:	PMSG	<?LOAD CHR>
 11974	140522	104025				  $PMSG
 11975	140524	147170				  $$CLIT
 11976	140526	000405				BR	ACTERR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 345
		APT11 PALII[KL,SYS]	Page 4 	APT10 PDP-11 PROCESS, 13-AUG-75

 11977					ACTBCK:	PMSG	<?CKSUM>
 11978	140530	104025				  $PMSG
 11979	140532	147202				  $$CLIT
 11980	140534	000402				BR	ACTERR
 11981					
 11982					ACTLDF:	PMSG	<?FORMAT>
 11983	140536	104025				  $PMSG
 11984	140540	147211				  $$CLIT
 11985					
 11986					ACTERR:	PMSG	< ERR: LOAD LINE >
 11987	140542	104025				  $PMSG
 11988	140544	147221				  $$CLIT
 11989	140546	013700	150724			MOV	DEVLC,R0
 11990	140552	104037				PNTDEC			;PRINT LOAD LINE NUMBER
 11991	140554	104031				PCRLF
 11992					.IF DF MONASB
 11993						TST	DEVTYP
 11994						BPL	2$		;DECTAPE/RP04
 11995						INC	ARETRY
 11996						CMP	#4,ARETRY	;REACHED RETRY LIMIT ?
 11997						BEQ	1$		;YES
 11998						COMNAK			;NO, NAK MESSAGE & TRY AGAIN
 11999						DEC	DEVLC		;DECREMENT LINE COUNT
 12000						JMP	ACTLD1
 12001					
 12002					1$:	PMSG	<CAN'T LOAD>
 12003					.ENDC
 12004	140556	000757			2$:	BR	$$C2
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 346
		APT11 PALII[KL,SYS]	Page 5 	COMMUNICATIONS ROUTINES

 12005					.SBTTL	COMMUNICATIONS ROUTINES
 12006					
 12007					.IF DF MONASB
 12008					
 12009					$COMACK:INC	MSGNBR		;COUNT MESSAGE
 12010					$$CMACK:MOV	#ACKMSG,R5	;MESSAGE ACKNOWLEDGE
 12011						BR	$COMCX
 12012					
 12013					$COMNAK:MOV	#NAKMSG,R5	;MESSAGE NEGATIVE ACKNOWLEDGE
 12014						BR	$COMCX
 12015					
 12016					$COMCMD:CLR	R5		;MESSAGE COMMAND
 12017					
 12018					$COMCX:	MOV	#3,R4		;RETRY 3 TIMES
 12019					
 12020					1$:	TST	R5
 12021						BNE	2$
 12022					
 12023						COMSND			;COMMAND SEND
 12024						BR	3$
 12025					
 12026					2$:	MOV	R5,R0
 12027						COMCTL			;CONTROL SEQUENCE SEND
 12028					
 12029					3$:	COMLIN			;GET REPLY
 12030						BCS	5$		;ERROR
 12031						BPL	7$		;CONTROL SEQUENCE
 12032					
 12033						MOV	#136,R3		;NORMAL MESSAGE
 12034						BIT	#1,MSGNBR	;ODD OR EVEN MESSAGE NUMBER
 12035						BEQ	4$
 12036						MOV	#041,R3
 12037					4$:	CMP	R3,COMNBR	;CORRECT MESSAGE NUMBER ?
 12038						BNE	$$CMACK		;NO, MUST BE REPEAT
 12039						CLR	R0
 12040					41$:	EXIT			;NEW MESSAGE READY FOR PROCESS
 12041					
 12042					5$:	DEC	R4		;EXCEEDED RETRY LIMIT ?
 12043						BNE	6$		;NO, TRY AGAIN
 12044						JMP	$COMERR		;YES, REPORT ERROR & ABORT
 12045					
 12046					6$:	TST	R5
 12047						BNE	61$		;CONTROL REPEAT
 12048						CMP	#-5,R0		;RECIEVED CHECKSUM ERROR ?
 12049						BEQ	61$		;YES, SEND NAK
 12050						COMRTRY			;COMMAND RETRY
 12051						BR	3$
 12052					
 12053					61$:	MOV	#NAKMSG,R5
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 347
		APT11 PALII[KL,SYS]	Page 5.1 	COMMUNICATIONS ROUTINES

 12054						BR	2$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 348
		APT11 PALII[KL,SYS]	Page 6 	COMMUNICATIONS ROUTINES

 12055					7$:	TTICHR			;GET CONTROL SEQUENCE CHARACTER
 12056						CMPB	#'A,R0
 12057						BEQ	41$		;A, ACKNOWLEDGE
 12058						CMPB	#'Z,R0
 12059						BEQ	8$		;Z, END OF TRANSMISSION
 12060						CMPB	#'N,R0
 12061						BNE	71$
 12062						MOV	#-7,R0		;N, NEGATIVE ACKNOWLEDGE
 12063						BR	5$
 12064					
 12065					71$:	MOV	#-10,R0		;UNKNOWN RESPONSE
 12066						BR	5$
 12067					
 12068					8$:	EXITERR			;END OF FILE
 12069					
 12070					$COMERR:PUSH	R0
 12071						PMSG	<?COMM ERR >
 12072						POP	R0
 12073						NEG	R0
 12074						MOV	R0,R1
 12075						PNTOCS
 12076						PNTCI
 12077						", 
 12078						DEC	R1
 12079						SL	R1,1
 12080						MOV	CMERTB(R1),R0
 12081						PNTAL
 12082						JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 349
		APT11 PALII[KL,SYS]	Page 7 	COMMUNICATIONS ROUTINES

 12083					CMERTB:	CMER1
 12084						CMER2
 12085						CMER3
 12086						CMER4
 12087						CMER5
 12088						CMER6
 12089						CMER7
 12090						CMER10
 12091					
 12092					CMER1:	.ASCIZ	%NO RESPONSE%
 12093					CMER2:	.ASCIZ	%LONG LINE%
 12094					CMER3:	.ASCIZ	%MSG NBR%
 12095					CMER4:	.ASCIZ	%NO CR%
 12096					CMER5:	.ASCIZ	%MSG CKSUM%
 12097					CMER6:	.ASCIZ	%FORMAT%
 12098					CMER7:	.ASCIZ	%NAK%
 12099					CMER10:	.ASCIZ	%UNKNOWN%
 12100					.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 350
		APT11 PALII[KL,SYS]	Page 8 	COMMUNICATIONS ROUTINES

 12101					$COMSND:MOV	#COUTBF,R5
 12102						CLR	R3
 12103					
 12104					1$:	CMPB	(R0),#CR	;REACHED CR YET ?
 12105						BEQ	2$		;YES
 12106						CMPB	(R0),#ALTMOD	;OR ALTMODE ?
 12107						BEQ	12$		;YES, SUBSTITUTE CR
 12108					
 12109						TSTB	(R0)		;REACHED NULL BYTE ?
 12110						BNE	11$
 12111						MOV	#-6,R0		;YES, INCORRECT MESSAGE FORMAT
 12112						BR	$COMERR
 12113					
 12114					11$:	MOVB	(R0),R2
 12115						ADD	R2,R3		;ACCUMULATE CHECKSUM
 12116						MOVB	(R0)+,(R5)+	;TRANSFER MSG TO OUTPUT BUFFER
 12117						BR	1$
 12118					
 12119					12$:	MOV	#ALTMOD,(R5)+
 12120						BR	22$
 12121					2$:	MOVB	(R0)+,(R5)+	;PUT CR IN OUTPUT
 12122					22$:	CLRB	(R5)		;FOLLOW WITH NULL
 12123					
 12124						MOV	#COUTBF-4,R5	;SETUP MESSAGE START
 12125						MOVB	#136,(R5)
 12126						BIT	#1,MSGNBR	;SET UP MESSAGE NUMBER CHAR
 12127						BEQ	21$
 12128						MOVB	#041,(R5)
 12129					21$:	INC	R5
 12130					
 12131						NEG	R3		;NEGATE CHECKSUM
 12132					
 12133						MOV	R3,R0
 12134						SWAB	R0
 12135						BIC	#177400,R0
 12136						SHIFTR
 12137						  4
 12138						JSR	PC,COMASC
 12139						MOVB	R0,(R5)+	;INSERT 1ST CHECK CHAR
 12140					
 12141						MOV	R3,R0
 12142						SHIFTR
 12143						  6
 12144						JSR	PC,COMASC
 12145						MOVB	R0,(R5)+	;INSERT 2ND CHECK CHAR
 12146					
 12147						MOV	R3,R0
 12148						JSR	PC,COMASC
 12149						MOVB	R0,(R5)+	;INSERT 3RD CHECK CHAR
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 351
		APT11 PALII[KL,SYS]	Page 9 	COMMUNICATIONS ROUTINES

 12150					$CMRTRY:MOV	#COUTBF-4,R0	;SETUP MESSAGE POINTER
 12151					
 12152					$COMCTL:TSTB	@$CMTKS		;ANY OLD CHARS ?
 12153						BPL	1$
 12154						MOVB	@$CMTKB,$TTYIN	;YES, GET GET OF IT
 12155						BR	$COMCTL
 12156					
 12157					1$:	TSTB	@$CMTPS		;WAIT TILL OUTPUT IS READY
 12158						BPL	$COMCTL
 12159					
 12160						MOV	#2,R1		;SEND 2 SYNC CHARACTERS
 12161					2$:	MOVB	#SYN,@$CMTPB
 12162					3$:	TSTB	@$CMTPS
 12163						BPL	3$
 12164						DEC	R1
 12165						BNE	2$
 12166					
 12167					4$:	MOVB	(R0)+,R1	;GET MESSAGE CHAR
 12168						BEQ	6$		;IF NULL, DONE
 12169					
 12170						MOVB	R1,@$CMTPB	;SEND CHAR
 12171					5$:	TSTB	@$CMTPS		;WAIT TILL OUTPUT READY
 12172						BPL	5$
 12173						BR	4$		;SEND TILL NULL
 12174					
 12175					6$:	EXIT			;COMPLETED
 12176					
 12177					COMASC:	BIC	#177700,R0	;KEEP 6 BITS
 12178						CMP	R0,#74		;LEAVE 75,76,77 ALONE
 12179						BGT	1$
 12180						BIS	#100,R0		;SET BIT 7 FOR ASCIIZE
 12181					1$:	RTS	PC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 352
		APT11 PALII[KL,SYS]	Page 10 	COMMUNICATIONS ROUTINES

 12182					$COMLIN:MOV	#CINBF-4,R1	;START BUFFER ADDRESS
 12183						CLR	$TTYTIM		;CLEAR TIMEOUT
 12184						CLR	R5		;CLEAR IN SYNC FLAG
 12185					
 12186					1$:	JSR	PC,C10COP	;PERFORM CLOCK OPERATIONS
 12187						CMP	$TTYTIM,#<20.*60.>	;20 SECS
 12188						BGT	90$		;TIMED OUT
 12189					
 12190						TSTB	@$CMTKS		;COMM IN FLAG SET ?
 12191						BMI	2$		;YES
 12192					
 12193						JSR	PC,$PTTYC	;ANY OPERATOR INTERRUPT ?
 12194						BR	1$		;NO
 12195					
 12196					2$:	MOVB	@$CMTKB,(R1)	;MOVE CHAR TO BUFFER
 12197						BICB	#200,(R1)
 12198						TSTB	(R1)
 12199						BEQ	1$		;IGNORE NULLS
 12200					
 12201						CMPB	(R1),#SYN	;SYNC CHAR ?
 12202						BEQ	21$		;YES
 12203					
 12204						TST	R5		;RECIEVED SYNC YET ?
 12205						BEQ	1$		;NO, DUMP GARBAGE CHARS
 12206					
 12207						CMPB	(R1),#ALTMOD
 12208						BEQ	3$		;ALTMODE, CONTROL SEQUENCE
 12209					
 12210						CMPB	(R1),#'$	;DOLLAR, PDP-10 SENDS THIS FOR ALTMODE
 12211						BNE	22$
 12212						CMP	R1,#CINBF	;LEGAL ONLY IF IN CONTROL SEQUENCE
 12213						BLT	3$
 12214					
 12215					22$:	CMPB	(R1),#LF
 12216						BEQ	4$		;LF, MESSAGE SEGMENT
 12217					
 12218						INC	R1
 12219						CMP	R1,#CINBF+140.
 12220						BLE	1$		;STILL ROOM
 12221						BR	91$		;NO, LINE TOO LONG
 12222					
 12223					21$:	MOV	#-1,R5		;SYNC, SET IN SYNC FLAG
 12224						BR	1$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 353
		APT11 PALII[KL,SYS]	Page 11 	COMMUNICATIONS ROUTINES

 12225					3$:	INC	R1		;NULL TO END BUFFER
 12226						CLRB	(R1)
 12227						MOV	R1,$INPTR	;SETUP INPUT POINTERS
 12228						MOV	#CINBF-4,$INPTC
 12229						EXIT			;CONTROL SEQUENCE RETURN
 12230					
 12231					4$:	INC	R1
 12232						CLRB	(R1)
 12233						MOV	R1,$INPTR	;SETUP INPUT POINTERS
 12234						MOV	#CINBF-4,R1
 12235						CMPB	#041,(R1)
 12236						BEQ	41$
 12237						CMPB	#136,(R1)
 12238						BEQ	41$
 12239						BR	92$		;MESSAGE NUMBER INCORRECT
 12240					
 12241					41$:	MOVB	(R1)+,COMNBR	;SAVE MESSAGE NUMBER
 12242						CLR	R0		;SETUP FOR MESSAGE CHECKSUM
 12243						MOV	#3,R5		;CHARS 2,3,4 ARE CHECKSUM
 12244					
 12245					42$:	SL	R0,6
 12246						MOVB	(R1)+,R4	;GET 1ST CHECK CHAR
 12247						BIC	#100,R4		;CLEAR ASCIIZE BIT
 12248						BIS	R4,R0		;INSERT IN 16 BIT CHECKSUM
 12249						DEC	R5
 12250						BGT	42$		;DO 3 CHARS
 12251					
 12252					43$:	CMPB	(R1),#CR	;REACHED EOL ?
 12253						BEQ	44$		;YES
 12254						TSTB	(R1)		;PAST EOL WITHOUT CR ?
 12255						BEQ	93$		;YES, NO CR ERROR
 12256					
 12257						MOVB	(R1)+,R3
 12258						ADD	R3,R0		;ACCUMULATE CHECKSUM
 12259						BR	43$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 354
		APT11 PALII[KL,SYS]	Page 12 	COMMUNICATIONS ROUTINES

 12260					44$:	TST	R0		;DID CHECKSUM COMPUTE TO 0 ?
 12261						BNE	94$		;NO, CHECKSUM ERROR
 12262					
 12263						MOV	#CINBF,$INPTC	;MESSAGE SEGMENT OK
 12264						BIS	#NBIT,14(SP)	;SET NORMAL MESSAGE INDICATOR
 12265						EXIT
 12266					
 12267					90$:	MOV	#-1,R0		;NO RESPONSE ERROR
 12268						BR	99$
 12269					
 12270					91$:	MOV	#-2,R0		;LINE TOO LONG ERROR
 12271						BR	99$
 12272					
 12273					92$:	CMPB	#'?,(R1)	;IS MESSAGE NUMBER QUESTION MARK ?
 12274						BEQ	COMQ		;YES, HOST ERROR
 12275						MOV	#-3,R0		;MESSAGE NUMBER CHAR ERROR
 12276						BR	99$
 12277					
 12278					93$:	MOV	#-4,R0		;NO CARRIAGE RETURN ERROR
 12279						BR	99$
 12280					
 12281					94$:	MOV	#-5,R0		;MESSAGE CHECKSUM ERROR
 12282					
 12283					99$:	EXITERR			;ERROR EXIT, C-BIT SET, CODE IN R0
 12284					
 12285					COMQ:	$PMSG			;PRINT ERROR REPLY
 12286						 CINBF-4
 12287						JMP	$CNTLC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 355
		APT11 PALII[KL,SYS]	Page 13 	COMMUNICATIONS ROUTINES

 12288					$COMENQ:COMCLR			;CLEAR COMMUNICATIONS
 12289						SETFLG
 12290						  ENQFLG		;SET APT10 IN PROGRESS
 12291						MOV	#3,R4
 12292					10$:	CLR	MSGNBR		;INITIALIZE MESSAGE NUMBER
 12293						MOV	#ENQMSG,R0
 12294						COMCTL			;SEND "ENQ" MESSAGE
 12295					
 12296						COMLIN			;WAIT FOR REPLY
 12297						BCS	1$		;ERROR, CODE IN R0
 12298						BMI	3$		;NORMAL MESSAGE REPLY ?
 12299						TTICHR
 12300						CMPB	#'A,R0		;A, ACKNOWLEDGE
 12301						BNE	1$
 12302						EXIT			;ACKED, GO AHEAD
 12303					
 12304					1$:	TST	R0		;IS REPLY CODE NEGATIVE ?
 12305						BMI	4$		;YES, COMLIN ERROR
 12306					
 12307						CMPB	#'Z,R0		;IS REPLY EOT, WAIT ?
 12308						BNE	3$		;NO
 12309					
 12310						CLR	$TTYTIM		;YES, WAIT 10 SECONDS
 12311					2$:	JSR	PC,$PTTYC
 12312						JSR	PC,C10COP
 12313						CMP	$TTYTIM,#<10.*60.>
 12314						BLE	2$
 12315						BR	$COMENQ		;THEN TRY AGAIN
 12316					
 12317					3$:	PMSG	<?APT10 ENQ>
 12318						JMP	$CNTLC
 12319					
 12320					4$:	DEC	R4
 12321						BNE	10$		;RETRY
 12322						JMP	$COMERR		;COMMUNICATIONS ERROR
 12323					
 12324					$COMEOT:MOV	#EOTMSG,R0
 12325						COMCTL
 12326						EXIT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 356
		APT11 PALII[KL,SYS]	Page 14 	COMMUNICATIONS ROUTINES

 12327					$COMCLR:CLR	ENQFLG
 12328						MOV	#CANMSG,R0
 12329						COMCTL
 12330						MOV	#100000,R1
 12331					1$:	TSTB	@$CMTKS		;ANY INPUT IN PROGRESS ?
 12332						BPL	2$
 12333						MOVB	@$CMTKB,R0	;IF SO, GET RID OF IT
 12334						BR	1$
 12335					2$:	DEC	R1
 12336						BNE	1$		;A LITTLE DELAY
 12337						EXIT
 12338					
 12339					ENQMSG:	.BYTE	'E,33,0
 12340					ACKMSG:	.BYTE	'A,33,0
 12341					NAKMSG:	.BYTE	'N,33,0
 12342					CANMSG:	.BYTE	'C,33,0
 12343					EOTMSG:	.BYTE	'Z,33,0
 12344					
 12345						.EVEN
 12346					
 12347					.ENDC ;.IF DF MONASB
 12348					
 12349	140560	012700	150500		IFILEP:	MOV	#$INBUF,R0	;SETUP POINTERS
 12350					.IF DF MONASB
 12351						TST	DEVTYP
 12352						BPL	10$
 12353						MOV	#CINBF,R0
 12354					.ENDC
 12355	140564	013701	147622		10$:	MOV	IFINP,R1
 12356	140570	112021			1$:	MOVB	(R0)+,(R1)+	;TRANSFER CHARS TO STORAGE
 12357	140572	001376				BNE	1$		;TILL NULL
 12358	140574	105011				CLRB	(R1)		;THEN STORE 2ND NULL
 12359	140576	010137	147622			MOV	R1,IFINP	;RESAVE POINTER
 12360	140602	020127	012600			CMP	R1,#TOUTBF+10000-200
 12361	140606	003402				BLE	2$		;EXCEEDED BUFFER ROOM ?
 12362	140610	000137	131762			JMP	$LINERR		;YES
 12363	140614	000137	140312		2$:	JMP	ACTLD2		;REPEAT TILL EOF
 12364					
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 357
		KLDCP PAL[KL,SYS]	Page 5.9 	COMMUNICATIONS ROUTINES

 12365					
 12366								;PDP-11 Core Dump to A11 file
 12367					;.INSRT	CDMP11.PAL
 12368					
 12369								;KL10 diagnostic functions
 12370					.INSRT	BR11.PAL		
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 358
		BR11 PALII[KL,SYS]	Page 1 	COMMUNICATIONS ROUTINES

 12371				COMMENT ⊗   VALID 00025 PAGES
 12372				C REC  PAGE   DESCRIPTION
 12373				C00001 00001
 12374				C00003 00002	.SBTTL	DTE20 INITIALIZATION ROUTINE, 9-SEPTEMBER-75
 12375				C00005 00003	.SBTTL	ROUTINE TO READ THE EBUS VIA THE DTE20
 12376				C00007 00004	.SBTTL	ROUTINE TO EXECUTE DIAG FUNCTION VIA DTE20
 12377				C00009 00005	DIAGNOSTIC FUNCTION EXECUTE, FAST
 12378				C00011 00006	.SBTTL	ROUTINE TO WRITE 36 BITS TO THE EBUS
 12379				C00014 00007	.SBTTL	ROUTINE TO DO EBUS READ, THEN STORE DATA SOMEPLACE
 12380				C00016 00008	.SBTTL	MASTER RESET ROUTINE
 12381				C00021 00009	.SBTTL	CONTROL RAM ADDRESS ROUTINE
 12382				C00023 00010	.SBTTL	WCRAM ROUTINE
 12383				C00026 00011	$STRCH:	MOV	WREADY,R0	GET UNSPACED DATA
 12384				C00028 00012	.SBTTL	RCRAM ROUTINE
 12385				C00031 00013	15$:	MOVB	WREADY+1,-(R3)	ENDING UP
 12386				C00033 00014	$SQASH:	MOV	WREADY,R1	GET STRETCHED BITS 8-19
 12387				C00035 00015	.SBTTL	MICNUL & MICFIL C-RAM ROUTINES
 12388				C00036 00016	MICFIL, C-RAM FILL WITH ONES ROUTINE
 12389				C00037 00017	.SBTTL	WDRAM ROUTINE
 12390				C00038 00018	.SBTTL	RDRAM ROUTINE
 12391				C00040 00019	$DRAMAD: MOV	#DDRAM,R3	GET ADDRESS OF EBUS DATA
 12392				C00042 00020	WRITE THE IR
 12393				C00044 00021	.SBTTL	M-BOX CLOCK BURST ROUTINE
 12394				C00046 00022	.SBTTL	LOAD AR ROUTINE
 12395				C00049 00023	.SBTTL	MBOX PHASE ROUTINE
 12396				C00052 00024	.SBTTL	VMA, VMAH, PC & ADDRESS BREAK ROUTINE
 12397				C00054 00025		MOV	#WREADY+5,R1	NOW MOVE READ DATA
 12398				C00056 ENDMK
 12399					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 359
		BR11 PALII[KL,SYS]	Page 2 	DTE20 INITIALIZATION ROUTINE, 9-SEPTEMBER-75

 12400					.SBTTL	DTE20 INITIALIZATION ROUTINE, 9-SEPTEMBER-75
 12401					
 12402	140620	005737	157316		DTEINI:	TST	$ONETM		;HAVE WE GONE THRU THIS ONCE BEFORE ?
 12403	140624	001013				BNE	3$		;BR IF YES
 12404	140626	012700	174400			MOV	#DTEADR,R0
 12405					
 12406	140632	012702	000020		11$:	MOV	#16.,R2
 12407	140636	012701	157320			MOV	#.DELAY,R1
 12408	140642	010021			1$:	MOV	R0,(R1)+	;SETUP DTE20 INDIRECT ADDRESS POINTERS
 12409	140644	005200				INC	R0
 12410	140646	005200				INC	R0
 12411	140650	005302				DEC	R2
 12412	140652	001373				BNE	1$
 12413	140654	104055			3$:	SETFLG
 12414	140656	157316				$ONETM
 12415					
 12416	140660	012700	140730			MOV	#$STJRS,R0	;SETUP "JRST" START INSTRUCTION
 12417	140664	012701	157222			MOV	#$$STJRS,R1	;MUST BE IN STORAGE BECAUSE
 12418	140670	012021				MOV	(R0)+,(R1)+	;THE JRST ADR IS VARIABLE
 12419	140672	012021				MOV	(R0)+,(R1)+
 12420	140674	012021				MOV	(R0)+,(R1)+
 12421					
 12422	140676	012700	140722			MOV	#$PAGDFL,R0	;SETUP "DATAO PAG,0" DEFAULT ARGUMENT
 12423	140702	012701	157254			MOV	#PAGDFL,R1	;MUST BE IN STORAGE BECAUSE THE CURRENT
 12424	140706	012021				MOV	(R0)+,(R1)+	;AC BLOCK SELECTION IS VARIABLE
 12425	140710	012021				MOV	(R0)+,(R1)+
 12426	140712	012021				MOV	(R0)+,(R1)+
 12427					
 12428	140714	005000				CLR	R0
 12429	140716	104147				SETMPH			;SET M-BOX PHASE
 12430	140720	000207				RTS	PC
 12431					
 12432					$PAGDFL:WD36	7000,0040,0000	;LD'S & NO ST ACC
 12433		140730			.EVEN
 12434					
 12435					$STJRS:	I10	JRST,0,,0
 12436		000000					ADH=0
 12437		000000					ADL=0
 12438						  .IF	NB 0
 12439						  .IRPC	AD1,0
 12440						  .IIF	GE <ADL-10000>,ADH=ADL/10000
 12441						  ADL=10*<ADL&7777>+AD1
 12442						  .ENDM
 12443		770000				  .IIF	GE <ADL-10000>,ADH=ADL/10000
 12444		000000				  ADL=10*<ADL&7777>+0
 12445						  .ENDC
 12446						  .IIF B 0,AC=0
 12447		000000				  .IIF NB 0,AC=0
 12448		000000				  .IIF B ,I=0
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 360
		BR11 PALII[KL,SYS]	Page 2.1 	DTE20 INITIALIZATION ROUTINE, 9-SEPTEMBER-75

 12449						  .IIF NB ,I=
 12450		000000				  .IIF B ,XR=0
 12451						  .IIF NB ,XR=
 12452		140736			.EVEN
 12453					
 12454	140736	013700	157320		$DTEBAS:MOV	.DELAY,R0
 12455						EXIT
 12456	140742	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 361
		BR11 PALII[KL,SYS]	Page 3 	ROUTINE TO READ THE EBUS VIA THE DTE20

 12457					.SBTTL	ROUTINE TO READ THE EBUS VIA THE DTE20
 12458					
 12459					;THIS IS THE ROUTINE TO READ 36 BITS FROM THE EBUS
 12460					;THE CALL REQUIRES THE DIAGNOSTIC FUNCTION TO BE EXECUTED
 12461					;TO BE IN REGISTER R0,RIGHT JUSTIFIED.
 12462					;CALLING SEQUENCE:
 12463					;	CALL-1:	MOV	#DIAG FUNCTION,R0
 12464					;	CALL:	DFRD
 12465					
 12466	140746	017700	006662		$DFRDT:	MOV	@$EMADR,R0	;PICKUP TRAILING PARAMETER
 12467	140752	062766	000002	000012		ADD	#2,12(SP)	;SKIP RETURN
 12468					
 12469	140760	004737	141266		$DFRD:	JSR	PC,$KLCK1	;CHECK KL10 CLOCK RUNNING
 12470	140764	006300				ASL	R0		;MAKE DIAG FCN IN CORRECT BITS
 12471	140766	000300				SWAB	R0		;MAKE DIAG FCN IN CORRECT BYTE
 12472	140770	052700	000211			BIS	#DCOMST!DFUNC!DIKL10,R0 ;SET CORRECT DTE20 BITS
 12473	140774	010077	016350			MOV	R0,@.DIAG1	;EXECUTE THE FUNCTION
 12474					$DFXX:	WFZERO	DCOMST		;WAIT FOR DONE FLAG
 12475	141000	012746	004704			  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
 12476	141004	032777	000001	016336	  91$:	  BIT	#DCOMST,@.DIAG1	;TEST BIT
 12477	141012	001407				  BEQ	92$		;LEAVE IF BIT ZERO(OK)
 12478	141014	005316				  DEC	(SP)		;DECREMENT CNT
 12479	141016	001372				  BNE	91$		;CONTINUE LOOP
 12480	141020	005737	147732			  TST	RPTFLG		;OTHERWISE TIME OUT
 12481	141024	001002				  BNE	92$
 12482	141026	004137	141044			  JSR	R1,$DFTIM
 12483	141032	005726			  92$:	  TST	(SP)+		;RESET STACK & CONTINUE
 12484	141034	004737	141340			JSR	PC,$KLCK2	;RESTART CLOCK IF NECESSARY
 12485						EXIT
 12486	141040	000137	124064			  JMP	$EXIT
 12487					
 12488	141044	005037	147670		$DFTIM:	CLR	TENRUN
 12489						PMSG	<?DF TIMEOUT AT >
 12490	141050	104025				  $PMSG
 12491	141052	147242				  $$CLIT
 12492	141054	010100				MOV	R1,R0
 12493	141056	104035				PNTOCT
 12494						PMSG	<PC = >
 12495	141060	104025				  $PMSG
 12496	141062	147262				  $$CLIT
 12497	141064	016600	000016			MOV	16(SP),R0		;GET ADDRESS OF CALL
 12498	141070	005740			$DFTMX:	TST	-(R0)
 12499	141072	104035				PNTOCT
 12500	141074	000137	100004			JMP	$CNTLC
 12501					
 12502					$ECTIM:	PMSG	<?CLK>
 12503	141100	104025				  $PMSG
 12504	141102	147270				  $$CLIT
 12505					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 362
		BR11 PALII[KL,SYS]	Page 3.1 	ROUTINE TO READ THE EBUS VIA THE DTE20

 12506					$DFTM1:	PMSG	< ERR AT >
 12507	141104	104025				  $PMSG
 12508	141106	147275				  $$CLIT
 12509	141110	010100				MOV	R1,R0
 12510	141112	000766				BR	$DFTMX
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 363
		BR11 PALII[KL,SYS]	Page 4 	ROUTINE TO EXECUTE DIAG FUNCTION VIA DTE20

 12511					.SBTTL	ROUTINE TO EXECUTE DIAG FUNCTION VIA DTE20
 12512					
 12513					;THIS IS THE ROUTINE TO EXECUTE A NON-DATA
 12514					;DIAGNOSTIC FUNCTION.  THE CALL REQUIRES THE
 12515					;DIAGNOSTIC FUNCTION TO BE EXECUTED TO BE IN
 12516					;REGISTER R0,RIGHT JUSTIFIED
 12517					
 12518					;CALLING SEQUENCE:
 12519					;	CALL-1:	MOV	#DIAG FUNCTION,R0
 12520					;	CALL:	DFXCT
 12521					
 12522					;DIAGNOSTIC FUNCTION EXECUTE, TRAILING PARAMETER
 12523					
 12524	141114	017700	006514		$DXCTT:	MOV	@$EMADR,R0	;PICKUP TRAILING PARAMETER
 12525	141120	062766	000002	000012		ADD	#2,12(SP)	;SKIP RETURN
 12526	141126	000406				BR	$DFXCT
 12527					
 12528					;DIAGNOSTIC FUNCTION EXECUTE, SINGLE STEP KL10 CLOCK
 12529					
 12530	141130	005037	147454		$DFSCLK:CLR	KLCLKR		;CLEAR KL10 CLOCK RUNNING
 12531	141134	012777	002201	016206		MOV	#DCOMST!DFUNC!<SSCLK*1000>,@.DIAG1
 12532	141142	000422				BR	$$DFX1
 12533					
 12534					;DIAGNOSTIC FUNCTION EXECUTE
 12535					
 12536	141144	020027	000001		$DFXCT:	CMP	R0,#001		;KL10 CLOCK START FUNCTION ?
 12537	141150	001406				BEQ	1$		;YES
 12538	141152	020027	000007			CMP	R0,#007		;ANY OTHER CLOCK CONTROL FUNCTION ?
 12539	141156	003006				BGT	2$		;NO
 12540	141160	005037	147454			CLR	KLCLKR		;YES, CLEAR LOGICAL CLOCK RUN FLAG
 12541	141164	000403				BR	2$
 12542	141166	012737	777777	147454	1$:	MOV	#-1,KLCLKR	;CLOCK START, SET LOGICAL CLOCK RUN FLAG
 12543	141174	006300			2$:	ASL	R0		;MAKE DIAG FCN IN CORRECT BITS
 12544	141176	000300				SWAB	R0		;MAKE DIAG FCN IN CORRECT BYTE
 12545	141200	052700	000201			BIS	#DCOMST!DFUNC,R0 ;SET CORRECT DTE20 BITS
 12546	141204	010077	016140			MOV	R0,@.DIAG1	;EXECUTE THE FUNCTION
 12547					$$DFX1:	WFZERO	DCOMST		;WAIT FOR DONE
 12548	141210	012746	004704			  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
 12549	141214	032777	000001	016126	  91$:	  BIT	#DCOMST,@.DIAG1	;TEST BIT
 12550	141222	001407				  BEQ	92$		;LEAVE IF BIT ZERO(OK)
 12551	141224	005316				  DEC	(SP)		;DECREMENT CNT
 12552	141226	001372				  BNE	91$		;CONTINUE LOOP
 12553	141230	005737	147732			  TST	RPTFLG		;OTHERWISE TIME OUT
 12554	141234	001002				  BNE	92$
 12555	141236	004137	141044			  JSR	R1,$DFTIM
 12556	141242	005726			  92$:	  TST	(SP)+		;RESET STACK & CONTINUE
 12557						EXIT			;RETURN
 12558	141244	000137	124064			  JMP	$EXIT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 364
		BR11 PALII[KL,SYS]	Page 5 	ROUTINE TO EXECUTE DIAG FUNCTION VIA DTE20

 12559					;DIAGNOSTIC FUNCTION EXECUTE, FAST
 12560					
 12561	141250	006300			$DFXFST:ASL	R0		;DIAG FUNCTION TO CORRECT BITS
 12562	141252	000300				SWAB	R0
 12563	141254	052700	000201			BIS	#DCOMST!DFUNC,R0
 12564	141260	010077	016064			MOV	R0,@.DIAG1	;EXECUTE THE FUNCTION
 12565	141264	000406				BR	$$DFXDN
 12566					
 12567					;KL10 CLOCK RUNNING CONTROLS
 12568					
 12569	141266	005737	147454		$KLCK1:	TST	KLCLKR		;KL10 CLOCK RUNNING ?
 12570	141272	001421				BEQ	$KLCK4		;NO
 12571	141274	012777	000201	016046		MOV	#DCOMST!DFUNC!<STPCLK*1000>,@.DIAG1
 12572					$$DFXDN:
 12573					$KLCK3:	WFZERO	DCOMST
 12574	141302	012746	004704			  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
 12575	141306	032777	000001	016034	  91$:	  BIT	#DCOMST,@.DIAG1	;TEST BIT
 12576	141314	001407				  BEQ	92$		;LEAVE IF BIT ZERO(OK)
 12577	141316	005316				  DEC	(SP)		;DECREMENT CNT
 12578	141320	001372				  BNE	91$		;CONTINUE LOOP
 12579	141322	005737	147732			  TST	RPTFLG		;OTHERWISE TIME OUT
 12580	141326	001002				  BNE	92$
 12581	141330	004137	141044			  JSR	R1,$DFTIM
 12582	141334	005726			  92$:	  TST	(SP)+		;RESET STACK & CONTINUE
 12583	141336	000207			$KLCK4:	RTS	PC
 12584					
 12585	141340	005737	147454		$KLCK2:	TST	KLCLKR		;WAS CLOCK RUNNING ?
 12586	141344	001774				BEQ	$KLCK4		;NO
 12587	141346	012777	001201	015774		MOV	#DCOMST!DFUNC!<STRCLK*1000>,@.DIAG1
 12588	141354	000752				BR	$KLCK3
 12589					
 12590	141356	010000			FFDEP:	DEP			;DTE20 DEPOSIT/EXAM BIT
 12591					
 12592					;DIAGNOSTIC FUNCTION, WRITE IR
 12593					
 12594	141360	104120			$DFWIR:	DFWRT			;THE LOAD AR FUNCTION IS ALREADY SETUP
 12595	141362	012777	014201	015760		MOV	#DCOMST!DFUNC!<IRLOAD*1000>,@.DIAG1
 12596	141370	004737	141302			JSR	PC,$$DFXDN	;STROBE DATA FROM AD TO IR
 12597						EXIT
 12598	141374	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 365
		BR11 PALII[KL,SYS]	Page 6 	ROUTINE TO WRITE 36 BITS TO THE EBUS

 12599					.SBTTL	ROUTINE TO WRITE 36 BITS TO THE EBUS
 12600					
 12601					;THIS IS THE ROUTINE TO WRITE 36 BITS TO THE EBUS
 12602					;THE ROUTINE REQUIRES THAT THE ADDRESS OF THE DATA
 12603					;TO BE WRITTEN IS IN REGISTER R1.  THE DIAGNOSTIC
 12604					;FUNCTION WHICH DOES THE WRITE MUST BE RIGHT 
 12605					;JUSTIFIED IN REGISTER R0.THE DATA TO BE WRITTEN MUST
 12606					;BE IN 5 CONSECUTIVE BYTES AS FOLLOWS:
 12607					;	.BYTE	EBUS BITS 28-35
 12608					;	.BYTE	EBUS BITS 20-27
 12609					;	.BYTE	EBUS BITS 12-19
 12610					;	.BYTE	EBUS BITS 04-11
 12611					;	.BYTE	EBUS BITS 00-03
 12612					
 12613					;CALLING SEQUENCE:
 12614					;	CALL-2:	MOV	#ADDR,R1
 12615					;	CALL-1:	MOV	#DIAG FCN,R0
 12616					;	CALL:	DFWRT
 12617					
 12618	141400	004737	141266		$DFWRT:	JSR	PC,$KLCK1	;KL10 CLOCK RUNNING ?
 12619						PUSH	R1		;SAVE  DESTINATION FOR POSTERITY
 12620	141406	032701	000001			BIT	#1,R1		;DATA ON WORD BOUNDRY ?
 12621	141412	001457				BEQ	2$		;YES
 12622	141414	012705	147546			MOV	#XXDAT,R5
 12623	141420	112125				MOVB	(R1)+,(R5)+	;PUT BITS 28-35 INTO CORE WORD
 12624	141422	112125				MOVB	(R1)+,(R5)+	;PUT BITS 20-27 INTO CORE
 12625	141424	014577	015672			MOV	-(R5),@.DAT3	;PUT BITS 20-35 INTO DTE20
 12626	141430	112125				MOVB	(R1)+,(R5)+	;PUT BITS 12-19 INTO CORE WORD
 12627	141432	112125				MOVB	(R1)+,(R5)+	;PUT BITS 4-11 INTO CORE WORD
 12628	141434	014577	015664			MOV	-(R5),@.DAT2	;PUT BITS 4-19 INTO DTE20
 12629	141440	112115				MOVB	(R1)+,(R5)	;PUT BITS 0-3 INTO CORE WORD
 12630	141442	042715	177760			BIC	#177760,(R5)	;OFF TRASH
 12631	141446	011577	015654			MOV	(R5),@.DAT1	;BITS 0-3 INTO DTE20
 12632	141452	012777	000014	015670	1$:	MOV	#DIKL10!DSEND,@.DIAG1	;SET BIT TO DIAGNOSE KL10
 12633	141460	013777	141356	015642		MOV	FFDEP,@.TENA1	;SET DEPOSIT BIT OF DTE20
 12634	141466	013777	141356	015636		MOV	FFDEP,@.TENA2	;DO A PSEUDO DEPOSIT
 12635						WFONE	DEXDON		;WAIT FOR A FLAG
 12636	141474	012746	004704			  MOV	#2500.,-(SP)	;SET TIMEOUT CNT
 12637	141500	032777	000004	015646	  93$:	  BIT	#DEXDON,@.STDTE	;TEST BIT
 12638	141506	001007				  BNE	94$		;LEAVE IF NOW A ONE(OK)
 12639	141510	005316				  DEC	(SP)		;DECREMENT CNT
 12640	141512	001372				  BNE	93$		;CONTINUE LOOP
 12641	141514	005737	147732			  TST	RPTFLG		;OTHERWISE TIME OUT
 12642	141520	001002				  BNE	94$
 12643	141522	004137	141044			  JSR	R1,$DFTIM
 12644	141526	005726			  94$:	  TST	(SP)+		;RESET STACK
 12645	141530	006300				ASL	R0		;GET DIAG FCN IN BIT POSITION
 12646	141532	000300				SWAB	R0		;GET DIAG FCN IN BYTE POSITION
 12647	141534	052700	000215			BIS	#DCOMST!DSEND!DIKL10!DFUNC,R0 ;SET DTE20 BITS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 366
		BR11 PALII[KL,SYS]	Page 6.1 	ROUTINE TO WRITE 36 BITS TO THE EBUS

 12648	141540	010077	015604			MOV	R0,@.DIAG1	;EXECUTE THE DIAGNOSTIC FUNCTION
 12649						POP	R0		;RESTORE WHERE GOT DATA
 12650	141546	000137	141000			JMP	$DFXX		;WAIT FOR DONE & EXIT
 12651					
 12652	141552	012177	015544		2$:	MOV	(R1)+,@.DAT3	;BITS 20-35
 12653	141556	012177	015542			MOV	(R1)+,@.DAT2	;BITS 4-19
 12654	141562	011177	015540			MOV	(R1),@.DAT1	;BITS 0-3
 12655	141566	000731				BR	1$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 367
		BR11 PALII[KL,SYS]	Page 7 	ROUTINE TO DO EBUS READ, THEN STORE DATA SOMEPLACE

 12656					.SBTTL	ROUTINE TO DO EBUS READ, THEN STORE DATA SOMEPLACE
 12657					
 12658					;ENTER THIS ROUTINE WITH R0 CONTAINING DIAGNOSTIC FUNCTION TO EXECUTE
 12659					;AND R1 CONTAINING ADDRESS OF BUFFER WHERE DATA SHOULD BE PLACED
 12660					
 12661	141570	104116			$DFRDMV:DFRD			;GO READ KL10 DATA
 12662						PUSH	R1		;SAVE DESTINATION
 12663	141574	013700	157322			MOV	.DAT3,R0	;GET ADDRESS OF DTE20 REG
 12664	141600	112021				MOVB	(R0)+,(R1)+	;DATA FROM DTE TO CORE
 12665	141602	112021				MOVB	(R0)+,(R1)+	;DATA FROM DTE TO CORE
 12666	141604	112021				MOVB	(R0)+,(R1)+	;DATA FROM DTE TO CORE
 12667	141606	112021				MOVB	(R0)+,(R1)+	;DATA FROM DTE TO CORE
 12668	141610	112021				MOVB	(R0)+,(R1)+	;DATA FROM DTE TO CORE
 12669						POP	R0		;RESTORE REG R1
 12670						EXIT
 12671	141614	000137	124064			  JMP	$EXIT
 12672					
 12673					;DIAGNOSTIC FUNCTION WRITE, TRAILING PARAMETER
 12674					
 12675	141620	013705	147634		$DWRTT:	MOV	$EMADR,R5
 12676	141624	012501				MOV	(R5)+,R1	;DATA ADDRESS TO R1
 12677	141626	011500				MOV	(R5),R0		;DIAG FUNCTION TO R0
 12678	141630	062766	000004	000012		ADD	#4,12(SP)	;RETURN OVER TRAILING PARAMETERS
 12679	141636	000660				BR	$DFWRT
 12680					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 368
		BR11 PALII[KL,SYS]	Page 8 	MASTER RESET ROUTINE

 12681					.SBTTL	MASTER RESET ROUTINE
 12682					;MASTER RESET DIAGNOSTIC FUNCTION LIST
 12683					
 12684	141640	   000			LLIST:	.BYTE	STPCLK		;STOP CLOCK
 12685	141641	   007				.BYTE	SETMR		;SET MASTER RESET
 12686	141642	   001				.BYTE	STRCLK		;START CLOCK
 12687	141643	   042				.BYTE	LDBRR		;LOAD BURST REGISTER RIGHT
 12688	141644	   043				.BYTE	LDBRL		;LOAD BURST REGISTER LEFT
 12689	141645	   045				.BYTE	LDDIS		;LOAD CLOCK DISTRIBUTION REGISTER
 12690	141646	   046				.BYTE	LDCHK1		;LOAD PARITY CHECK REGISTER
 12691	141647	   047				.BYTE	LDCHK2		;LOAD EBOX INTERNAL CHECK REGISTER
 12692	141650	   070				.BYTE	LDCHAN		;INITIALIZE CHANNELS
 12693	141651	   000				.BYTE	STPCLK		;STOP CLOCK
 12694		000012			LLISTL==.-LLIST			;BUT THE LAST THREE ARE SPECIAL
 12695	141652	   067				.BYTE	ENIOJA		;SET IR DECODE TO KL10 MODE
 12696	141653	   076				.BYTE	76		;D.F. TO CONTROL EBUS REG
 12697	141654	   071				.BYTE	LDMBXA		;LOAD MEMORY TO CACHE SELECTOR
 12698		141656			.EVEN
 12699					
 12700					;THIS IS A ROUTINE TO DO A MASTER RESET.
 12701					
 12702					$MRESET:PUSH	R0		;SAVE REGISTERS
 12703	141660	005737	147670			TST	TENRUN		;PDP-10 PRESENTLY RUNNING ?
 12704	141664	001401				BEQ	90$		;BR IF NOT
 12705	141666	104077				TENSP			;STOP TEN
 12706	141670	005037	152216		90$:	CLR	TENCLK		;AFTER THIS, THE 10 DOESN'T NEED CLOCK INTS
 12707	141674	005037	147422			CLR SWTDEP		; OR DATA SWITCHES ...
 12708	141700	005037	147666			CLR MONMODE		; ... OR MONITOR MODE (CLEAR FOR KA SIM)
 12709	141704	005037	147664			CLR MTTYOF
 12710	141710	005037	147660			CLR KASIM		;AND IS NO LONGER IN KASIM MODE
 12711					.IF DF CLKASB
 12712	141714	005037	157142			CLR TIMFLG		; ... OR TIME OF DAY
 12713	141720	005037	157140			CLR TMSFLG
 12714					.ENDC DF CLKASB
 12715	141724	012777	000100	015420		MOV	#DRESET,@.DIAG2		;MASTER CLEAR THE DTE20
 12716					.IF DF %%QMP
 12717					;For QMP11, include INTRON in new DTE status
 12718	141732	012777	053141	015414		MOV	#INTRON!DON10C!ERR10C!INT11C!PERCLR!DON11C!ERR11C,@.STDTE ;CLEAR DTE20 STATUS
 12719					.IFF
 12720						MOV	#DON10C!ERR10C!INT11C!PERCLR!DON11C!ERR11C,@.STDTE ;CLEAR DTE20 STATUS
 12721					.ENDC
 12722	141740	104141				DFWRTT			;WRITE TO CLOCK
 12723	141742	157246				CLKDFL			;SET CLOCK TO DEFAULT
 12724	141744	000044				LDSEL
 12725	141746	005037	147454			CLR	KLCLKR		;CLEAR KL10 CLOCK RUNNING
 12726	141752	012701	000012			MOV	#LLISTL,R1	;MUST EXECUTE TEN DIAG FUNCTIONS IN MR
 12727	141756	012702	141640			MOV	#LLIST,R2	;ADDRESS OF FUNCTIONS INTO R2
 12728	141762	112200			1$:	MOVB	(R2)+,R0	;FUNCTION TO R0 FOR THE EXECUTE CALL
 12729	141764	004737	141250			JSR	PC,$DFXFST	;EXECUTE THE DIAGNOSTIC FUNCTION
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 369
		BR11 PALII[KL,SYS]	Page 8.1 	MASTER RESET ROUTINE

 12730	141770	005301				DEC	R1		;DECREMENT COUNT OF # OF FUNCTIONS LEFT
 12731	141772	001373				BNE	1$		;CONTINUE TILL DONE
 12732					
 12733	141774	012704	000003			MOV	#3,R4		;SYNC MBOX NXM LOGIC
 12734	142000	104140			2$:	DFRDT			;TEST A CHANGE COMING L
 12735	142002	000162				  162
 12736	142004	032777	000010	015310		BIT	#BIT3,@.DAT3
 12737	142012	001407				BEQ	3$		;ASSERTED, CONTINUE
 12738	142014	012777	002201	015326		MOV	#DCOMST!DFUNC!<SSCLK*1000>,@.DIAG1
 12739	142022	004737	141302			JSR	PC,$$DFXDN	;DO ONE MBOX CLOCK
 12740	142026	005304				DEC	R4		;DONE 3 CLOCKS ?
 12741	142030	003363				BGT	2$		;NO, TRY AGAIN
 12742					
 12743	142032	012777	004201	015310	3$:	MOV	#DCOMST!DFUNC!<CECLK*1000>,@.DIAG1
 12744	142040	004737	141302			JSR	PC,$$DFXDN	;CONDITIONAL EBOX CLOCK
 12745	142044	012777	006201	015276		MOV	#DCOMST!DFUNC!<CLRMR*1000>,@.DIAG1
 12746	142052	004737	141302			JSR	PC,$$DFXDN	;CLEAR MR
 12747					
 12748	142056	112200				MOVB	(R2)+,R0
 12749	142060	004737	141250			JSR	PC,$DFXFST	;SET IR DECODE
 12750					
 12751	142064	112200				MOVB	(R2)+,R0	;GET THE NEXT FUNCTION FROM THE LIST
 12752	142066	012701	147532			MOV	#WREADY,R1	;CLEAR A 36 BIT BUFFER FOR SENDING DATA
 12753	142072	010105				MOV	R1,R5
 12754	142074	005025				CLR	(R5)+		;CLEAR A WORK AREA
 12755	142076	005025				CLR	(R5)+
 12756	142100	005015				CLR	(R5)
 12757	142102	104120				DFWRT			;WRITE 0'S TO EBUS & PREVENT SBUS RESET
 12758	142104	112711	000012			MOVB	#12,(R1)
 12759	142110	112200				MOVB	(R2)+,R0	;GET NEXT DIAG FUNCTION
 12760	142112	104120				DFWRT			;LOAD MEMORY TO CACHE SELECTOR
 12761						POP	R0
 12762						EXIT
 12763	142116	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 370
		BR11 PALII[KL,SYS]	Page 9 	CONTROL RAM ADDRESS ROUTINE

 12764					.SBTTL	CONTROL RAM ADDRESS ROUTINE
 12765					
 12766					$WWADR:	PUSH	R1		;SAVE R1
 12767	142124	005700				TST	R0		;IF BIT 15 SET, AVOID MASTER RESET
 12768	142126	100407				BMI	1$
 12769	142130	032700	040000			BIT	#BIT14,R0	;IF BIT 14 SET, SPECIAL RESET
 12770	142134	001403				BEQ	2$
 12771	142136	004737	142506			JSR	PC,$SPCMR	;SPECIAL MASTER RESET
 12772	142142	000401				BR	1$
 12773	142144	104076			2$:	MRESET
 12774	142146	042700	140000		1$:	BIC	#BIT15!BIT14,R0	;CLEAR CONTROL BITS ANYWAY
 12775	142152	012705	147534			MOV	#WREADY+2,R5
 12776	142156	005015				CLR	(R5)		;CLEAR A WORK AREA
 12777	142160	005045				CLR	-(R5)
 12778					
 12779						PUSH	R0
 12780	142164	004737	142226			JSR	PC,99$		;GO LOAD EBUS BITS 00-05
 12781	142170	012700	000052			MOV	#LCRDAL,R0	;WILL WRITE BITS 00-04 OF CR-ADR
 12782	142174	104120				DFWRT
 12783						POP	R0		;GET COPY OF ORIGINAL CR-ADR
 12784	142200	000300				SWAB	R0		;GET BITS 00-04
 12785	142202	006200				ASR	R0		;TO LOW ORDER BITS
 12786	142204	006200				ASR	R0		;OF R0.
 12787	142206	004737	142226			JSR	PC,99$		;GO LOAD EBUS BITS 00-05
 12788	142212	012700	000051			MOV	#LCRDAR,R0	;WILL WRITE BITS 5-10 OF CRADR
 12789	142216	104120				DFWRT
 12790						POP	R1		;RESTORE R1
 12791						EXIT
 12792	142222	000137	124064			  JMP	$EXIT
 12793					
 12794	142226	042700	000077		99$:	BIC	#77,R0		;DEAL ONLY WITH 6 BITS
 12795	142232	110037	147535			MOVB	R0,WREADY+3	;MOV TO EBUS BITS 4 & 5
 12796	142236	000300				SWAB	R0
 12797	142240	110037	147536			MOVB	R0,WREADY+4	;MOV TO EBUS BITS 0,1,2, & 3
 12798	142244	010501				MOV	R5,R1		;ADDRESS FOR DFWRT
 12799	142246	000207				RTS	PC
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 371
		BR11 PALII[KL,SYS]	Page 10 	WCRAM ROUTINE

 12800					.SBTTL	WCRAM ROUTINE
 12801					
 12802	142250	   057			WRLIST:	.BYTE	LCRAM1		;CRAM BITS 00-19
 12803	142251	   056				.BYTE	LCRAM2		;CRAM BITS 20-39
 12804	142252	   055				.BYTE	LCRAM3		;CRAM BITS 40-59
 12805	142253	   054				.BYTE	LCRAM4		;CRAM BITS 60-79-EVEN
 12806		142254			.EVEN
 12807					
 12808	142254	010102			$WCRAM:	MOV	R1,R2		;GET COPY OF DATA ADDRESS
 12809	142256	104075				WWADR			;GO AND WRITE C-RAM ADDRESS
 12810	142260	012704	000003			MOV	#3,R4		;FOUR LOOPS PER C-RAM WORD
 12811					
 12812	142264	012701	147532		1$:	MOV	#WREADY,R1	;GET HOLDING AREA
 12813	142270	112221				MOVB	(R2)+,(R1)+	;REAL DATA TO HOLDING AREA
 12814	142272	112221				MOVB	(R2)+,(R1)+
 12815	142274	111221				MOVB	(R2),(R1)+
 12816					
 12817	142276	005737	147530			TST	SIGNL		;SEE IF DESIRED BITS ON WORD BOUNDARY
 12818	142302	001412				BEQ	3$		;AVOID RORING CODE IF YES
 12819					
 12820					;THIS IS WONDERFUL RORING CODE
 12821					
 12822	142304	105722				TSTB	(R2)+		;MUST INCREMENT DATA ADDR PTR
 12823	142306	012700	000004			MOV	#4,R0		;FOUR SHIFTS IN THIS LOOP
 12824					
 12825	142312	012701	147535		2$:	MOV	#WREADY+3,R1	;POINT TO HOLDING AREA
 12826	142316	106041				RORB	-(R1)		;SHIFT & INCLUDE "C" BIT
 12827	142320	106041				RORB	-(R1)
 12828	142322	106041				RORB	-(R1)
 12829	142324	005300				DEC	R0		;DONE?
 12830	142326	001371				BNE	2$		;LOOP BACK IF NO
 12831					
 12832					;COMMON CODE
 12833					
 12834	142330	005137	147530		3$:	COM	SIGNL		;CHANGE BOUNDARY FLAG
 12835	142334	042737	177760	147534		BIC	#177760,WREADY+2  ;ONLY 4 BITS COUNT
 12836	142342	004737	142422		4$:	JSR	PC,$STRCH	;GO FILL IN EBUS SPACE
 12837	142346	116400	142250			MOVB	WRLIST(R4),R0	;CORRECT WRITE FUNCTION TO R0
 12838	142352	012701	147532			MOV	#WREADY,R1	;ADDRESS OF DATA
 12839	142356	104120				DFWRT
 12840	142360	005304				DEC	R4		;DONE ENTIRE RAM WORD?
 12841	142362	002340				BGE	1$		;BR BACK IFNO
 12842					
 12843					;CODE TO LOAD DISP 00-04
 12844					
 12845	142364	111237	147536			MOVB	(R2),WREADY+4	;GET DATA FOR DISP
 12846	142370	106237	147536			ASRB	WREADY+4	;SHIFT DATA
 12847	142374	106037	147535			RORB	WREADY+3	;TO EBUS BITS
 12848	142400	106237	147536			ASRB	WREADY+4	;00-05
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 372
		BR11 PALII[KL,SYS]	Page 10.1 	WCRAM ROUTINE

 12849	142404	106037	147535			RORB	WREADY+3
 12850	142410	104141				DFWRTT			;WRITE
 12851	142412	147532				WREADY			;DATA ADDRESS
 12852	142414	000053				LCRAM5			;DIAG FUNCTION
 12853						EXIT			;DONE
 12854	142416	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 373
		BR11 PALII[KL,SYS]	Page 11 	WCRAM ROUTINE

 12855	142422	013700	147532		$STRCH:	MOV	WREADY,R0	;GET UNSPACED DATA
 12856	142426	113737	147534	147535		MOVB	WREADY+2,WREADY+3 ;PUT C-RAM 0-3 BITS INTO CORRECT CORE
 12857	142434	005003				CLR	R3		;NO JUNK LEFT IN R3
 12858	142436	000261				SEC			;SET "C" BIT TO USE AS FLAG
 12859	142440	012705	000004		1$:	MOV	#4,R5		;FOUR SHIFTS BETWEEN BLANKS
 12860	142444	006003			2$:	ROR	R3		;NEW DATA LEFT END OF DESTINATION
 12861	142446	103407				BCS	3$		;IF FLAG FALLS OUT..DONE
 12862	142450	006000				ROR	R0		;ROTATE SOURCE BITS RIGHT
 12863	142452	005305				DEC	R5		;DONE 4 YET??
 12864	142454	002373				BGE	2$		;BR IF NO
 12865					
 12866	142456	006100				ROL	R0		;REPAIR ANY DAMAGES 
 12867	142460	000241				CLC			;ZERO THE "C" BIT
 12868	142462	006003				ROR	R3		;AND ROLL ZEROES
 12869	142464	000765				BR	1$		;AND CONTINUE
 12870					
 12871					;GET HERE TO FINISH UP
 12872					
 12873	142466	000241			3$:	CLC			;ZERO "C" BIT AGAIN
 12874	142470	006100				ROL	R0		;BITS 4-7
 12875	142472	006100				ROL	R0		;MUST BE CORRECTED
 12876	142474	010337	147532			MOV	R3,WREADY	;BITS 8-19 INTO CORE
 12877	142500	110037	147534			MOVB	R0,WREADY+2	;BITS 4-7 INTO CORE
 12878	142504	000207				RTS	PC		;DONE
 12879					
 12880					;SPECIAL BASIC MASTER RESET
 12881					
 12882					$SPCMR:	PUSH	<R0,R1,R2>
 12883	142514	005037	147454			CLR	KLCLKR		;CLEAR KL10 CLOCK RUNNING
 12884	142520	012701	142554			MOV	#$SMRLST,R1	;COMMAND ADR TO R1
 12885	142524	012702	000004			MOV	#4,R2		;FOUR COMMANDS
 12886	142530	012177	014614		1$:	MOV	(R1)+,@.DIAG1
 12887	142534	004737	141302			JSR	PC,$$DFXDN	;EXECUTE FUNCTION
 12888	142540	005302				DEC	R2
 12889	142542	001372				BNE	1$
 12890						POP	<R2,R1,R0>
 12891	142552	000207				RTS	PC
 12892					
 12893	142554	007201			$SMRLST:.WORD	DCOMST!DFUNC!<SETMR*1000>
 12894	142556	001201				.WORD	DCOMST!DFUNC!<STRCLK*1000>
 12895	142560	000201				.WORD	DCOMST!DFUNC!<STPCLK*1000>
 12896	142562	006201				.WORD	DCOMST!DFUNC!<CLRMR*1000>
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 374
		BR11 PALII[KL,SYS]	Page 12 	RCRAM ROUTINE

 12897					.SBTTL	RCRAM ROUTINE
 12898					
 12899	142564	005700			$RCRAM:	TST	R0		;IS R0 NEG
 12900	142566	100406				BMI	1$		;READ CURRENT CR IF YES
 12901					
 12902	142570	104075				WWADR			;EXAMINE ADDRESS IN R0 IF HERE
 12903	142572	012777	003201	014550		MOV	#DCOMST!DFUNC!<SECLK*1000>,@.DIAG1
 12904	142600	004737	141302			JSR	PC,$$DFXDN	;CLOCK ADDRESS CONTENTS TO C.R.
 12905					
 12906	142604	012703	147526		1$:	MOV	#$BUFRC+10.,R3	;GET BUFFER ADDR FOR C-RAM CONTENTS
 12907	142610	012704	143040			MOV	#$RDLST,R4	;GET DIAG FUNCTION LIST
 12908					
 12909	142614	112400			2$:	MOVB	(R4)+,R0	;DIAG FUNCTION
 12910	142616	104116				DFRD
 12911	142620	012701	147532			MOV	#WREADY,R1	;DESTINATION OF READ/MOVE
 12912	142624	013700	157322			MOV	.DAT3,R0
 12913	142630	012021				MOV	(R0)+,(R1)+
 12914	142632	012021				MOV	(R0)+,(R1)+
 12915	142634	011011				MOV	(R0),(R1)
 12916					
 12917	142636	004737	143044			JSR	PC,$SQASH	;GO CLEAR OUT BLANKS
 12918	142642	012700	147535			MOV	#WREADY+3,R0	;ADDRESS OF DATA JUST READ
 12919	142646	114043				MOVB	-(R0),-(R3)	;BITS 16-19 TO BUFFER
 12920	142650	005737	147512			TST	SIGNL2		;CHECK TRAFFIC LIGHT
 12921	142654	001005				BNE	4$		;BR TO RORING IF WRONG BOUNDARY
 12922					
 12923	142656	114043			3$:	MOVB	-(R0),-(R3)	;BITS 20-27 TO WORK AREA
 12924	142660	114043				MOVB	-(R0),-(R3)	;BITS 28-35 TO WORK AREA
 12925	142662	005137	147512			COM	SIGNL2		;CHANGE SIGNAL
 12926	142666	000752				BR	2$		;GET MORE DATA
 12927					
 12928	142670	106313			4$:	ASLB	(R3)		;NEED TO FIX A HALF BYTE
 12929	142672	106313				ASLB	(R3)
 12930	142674	106313				ASLB	(R3)
 12931	142676	106313				ASLB	(R3)
 12932						PUSH	R0		;DON'T LOSE DATA ADDRESS
 12933	142702	012700	000004			MOV	#4,R0		;DO NEXT LOOP FOUR TIMES
 12934					
 12935	142706	010302			10$:	MOV	R3,R2		;ADDRESS OF DATA TO R2
 12936	142710	106122				ROLB	(R2)+		;SHIFT AND DON'T FORGET "C"
 12937	142712	106122				ROLB	(R2)+
 12938	142714	106122				ROLB	(R2)+
 12939	142716	106122				ROLB	(R2)+
 12940	142720	005300				DEC	R0		;ASSEMBLED COMPLETE HALF BYTE
 12941	142722	001371				BNE	10$		;LOOP AGAIN IF NO
 12942						POP	R0		;RETRIEVE DATA ADDRESS
 12943	142726	105723				TSTB	(R3)+		;FIX DESTINATION ADDRESS
 12944	142730	005737	147510			TST	SIGNL3		;CHECK SIGNAL
 12945	142734	001003				BNE	15$		;DONE IF MINUS
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 375
		BR11 PALII[KL,SYS]	Page 12.1 	RCRAM ROUTINE

 12946	142736	005137	147510			COM	SIGNL3		;OTHERWISE CHANGE SIGNAL
 12947	142742	000745				BR	3$		;CONTINUE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 376
		BR11 PALII[KL,SYS]	Page 13 	RCRAM ROUTINE

 12948	142744	113743	147533		15$:	MOVB	WREADY+1,-(R3)	;ENDING UP
 12949	142750	113743	147532			MOVB	WREADY,-(R3)	;CRAM BITS 0-15 TO BUFFER
 12950	142754	005137	147510			COM	SIGNL3		;SIGNL3 TO ZERO
 12951	142760	005137	147512			COM	SIGNL2		;SIGNL2 TO ZERO
 12952	142764	104140				DFRDT
 12953	142766	000141				RCSPEC			;READ SPEC FIELD
 12954	142770	017701	014330			MOV	@.DAT2,R1	;GET DISP 03,04
 12955	142774	017700	014326			MOV	@.DAT1,R0	;GET DISP 00,01,02
 12956	143000	006101				ROL	R1		;JUSTIFY IN R0
 12957	143002	006100				ROL	R0
 12958	143004	006101				ROL	R1
 12959	143006	006100				ROL	R0
 12960					
 12961	143010	042700	177740			BIC	#177740,R0	;CLEAR TRASH
 12962	143014	110037	147526			MOVB	R0,$BUFRC+12	;SAVE IN BUFFER
 12963	143020	012700	147516			MOV	#$BUFRC+2,R0	;RETURN DATA ADDRESS IN R0
 12964	143024	042710	000005			BIC	#5,(R0)		;CLEAR PARITY BITS
 12965	143030	042740	052525			BIC	#52525,-(R0)	;AND FIX ADDRESS
 12966						EXIT			;DONE
 12967	143034	000137	124064			  JMP	$EXIT
 12968					
 12969	143040	   147			$RDLST:	.BYTE	RCRAM1		;READ CRAM 0-19
 12970	143041	   146				.BYTE	RCRAM2		;READ CRAM 20-39
 12971	143042	   145				.BYTE	RCRAM3		;READ CRAM 40-59
 12972	143043	   144				.BYTE	RCRAM4		;READ CRAM 60-79-EVEN
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 377
		BR11 PALII[KL,SYS]	Page 14 	RCRAM ROUTINE

 12973	143044	013701	147532		$SQASH:	MOV	WREADY,R1	;GET STRETCHED BITS 8-19
 12974	143050	013702	147534			MOV	WREADY+2,R2	;GET STRECHED BITS 0-7
 12975	143054	005000				CLR	R0		;CLEAR A DESTINATION
 12976	143056	000261				SEC			;SET A DONE FLAG
 12977	143060	006000				ROR	R0		;AND ROLLIT INTO R0
 12978	143062	012705	000004		1$:	MOV	#4,R5		;FOUR BITS PER GROUP
 12979	143066	005305			2$:	DEC	R5		;DONE A GROUP OF FOUR
 12980	143070	002413				BLT	20$		;BRANCH IF NO
 12981	143072	006202				ASR	R2		;ROTATE SOURCE BITS RIGHT
 12982	143074	006001				ROR	R1		;ALL TWENTY OF THEM
 12983	143076	006000				ROR	R0		;BEGIN WITH FIRST FLAG INTO R0
 12984	143100	103372				BCC	2$		;IF FLAG FALLS OUT..DONE
 12985					
 12986					;HERE TO FINISH UP
 12987					
 12988	143102	006201				ASR	R1		;MAKE LAST BLANKS
 12989	143104	006201				ASR	R1		;GO VERY FAR AWAY
 12990	143106	010037	147532			MOV	R0,WREADY	;STORE RESULTS IN CORE
 12991	143112	010137	147534			MOV	R1,WREADY+2	;ALL DONE
 12992	143116	000207				RTS	PC		;RETURN
 12993					
 12994	143120	006202			20$:	ASR	R2		;HERE TO SHIFT AWAY
 12995	143122	006001				ROR	R1		;THE PAIR
 12996	143124	006202				ASR	R2		;OF BLANKS HIDDEN
 12997	143126	006001				ROR	R1		;AMIDST THE REAL DATA
 12998	143130	000754				BR	1$		;CONTINUE
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 378
		BR11 PALII[KL,SYS]	Page 15 	MICNUL & MICFIL C-RAM ROUTINES

 12999					.SBTTL	MICNUL & MICFIL C-RAM ROUTINES
 13000					
 13001					;MICNUL, FILL C-RAM LOCATIONS WITH ZEROS
 13002					
 13003	143132	010102			$MICNUL:MOV	R1,R2		;NUMBER OF WORDS TO R2
 13004	143134	010003				MOV	R0,R3		;SAVE START ADDRESS
 13005	143136	052703	100000			BIS	#100000,R3	;BYPASS MR AFTER FIRST TIME
 13006	143142	012701	147556			MOV	#ZEROS,R1
 13007					
 13008	143146	104075			1$:	WWADR			;WRITE C-RAM ADDRESS
 13009					
 13010	143150	012704	000003			MOV	#3,R4
 13011	143154	112700	000057			MOVB	#LCRAM1,R0	;1ST FUNCTION IS A WRITE
 13012	143160	104120				DFWRT
 13013					
 13014	143162	116400	143212		2$:	MOVB	FLST(R4),R0	;DIAG FUNCTION
 13015	143166	004737	141250			JSR	PC,$DFXFST
 13016	143172	005304				DEC	R4
 13017	143174	002372				BGE	2$		;ZERO ALL BITS
 13018					
 13019	143176	005203				INC	R3		;INCREMENT C-RAM ADDRESS
 13020	143200	010300				MOV	R3,R0
 13021	143202	005302				DEC	R2		;FINISHED ALL WORDS YET ?
 13022	143204	003360				BGT	1$
 13023					10$:	EXIT			;YES
 13024	143206	000137	124064			  JMP	$EXIT
 13025					
 13026	143212	   053			FLST:	.BYTE	LCRAM5
 13027	143213	   054				.BYTE	LCRAM4
 13028	143214	   055				.BYTE	LCRAM3
 13029	143215	   056				.BYTE	LCRAM2
 13030	143216	   057				.BYTE	LCRAM1
 13031		143220			.EVEN
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 379
		BR11 PALII[KL,SYS]	Page 16 	MICNUL & MICFIL C-RAM ROUTINES

 13032					;MICFIL, C-RAM FILL WITH ONES ROUTINE
 13033					
 13034	143220	010102			$MICFIL:MOV	R1,R2		;NUMBER OF WORDS TO R2
 13035	143222	010003				MOV	R0,R3		;SAVE ADDRESS
 13036	143224	052703	100000			BIS	#100000,R3	;BYPASS MR AFTER FIRST TIME
 13037	143230	012701	100056			MOV	#TENMO,R1	;36 BITS OF ONES
 13038					
 13039	143234	104075			1$:	WWADR			;WRITE C-RAM ADDRESS
 13040	143236	012704	000004			MOV	#4,R4
 13041					
 13042	143242	116400	143212		2$:	MOVB	FLST(R4),R0	;DIAG FUNCTION
 13043	143246	104120				DFWRT
 13044	143250	005304				DEC	R4		;DO ALL BITS
 13045	143252	002373				BGE	2$
 13046					
 13047	143254	005203				INC	R3		;INCREMENT C-RAM ADDRESS
 13048	143256	010300				MOV	R3,R0
 13049	143260	005302				DEC	R2		;DONE ALL ADDRESSES YET ?
 13050	143262	003364				BGT	1$
 13051					10$:	EXIT
 13052	143264	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 380
		BR11 PALII[KL,SYS]	Page 17 	WDRAM ROUTINE

 13053					.SBTTL	WDRAM ROUTINE
 13054					
 13055	143270	010002			$WDRAM:	MOV	R0,R2		;COPY DRAM ADDRESS
 13056	143272	006000				ROR	R0		;CHECK IF ODD OR EVEN
 13057	143274	103002				BCC	1$		;BR IF EVEN
 13058	143276	000137	113350			JMP	ADRERR		;ADDRESS ERROR IF ODD
 13059					
 13060	143302	006100			1$:	ROL	R0		;FIX ADDRESS
 13061						PUSH	R1		;SAVE POINTER TO DATA
 13062	143306	104130				DRAMAD			;GO WRITE DRAM ADDRESS
 13063						POP	R3		;PUT POINTER TO DATA IN R3
 13064	143312	012301				MOV	(R3)+,R1	;DATA INTO R1
 13065	143314	004537	143662			JSR	R5,DATEVE	;WRITE EVEN DATA
 13066	143320	012301				MOV	(R3)+,R1	;DATA INTO R1
 13067	143322	004537	143646			JSR	R5,DATODD	;WRITE ODD DATA
 13068	143326	011301				MOV	(R3),R1		;DATA INTO R1
 13069	143330	004537	143634			JSR	R5,DATCOM	;WRITE COMMON DATA
 13070						EXIT
 13071	143334	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 381
		BR11 PALII[KL,SYS]	Page 18 	RDRAM ROUTINE

 13072					.SBTTL	RDRAM ROUTINE
 13073					
 13074					$RDRAM:	PUSH	<R1,R0>		;SAVE R1,STORE DRAM ADDR ON STACK TOP
 13075	143344	005001				CLR	R1		;R1 IS AN INDEX COUNTER
 13076	143346	104130			1$:	DRAMAD			;WRITE DRAM ADDRESS
 13077	143350	012777	015201	013772		MOV	#DCOMST!DFUNC!<DRLTCH*1000>,@.DIAG1
 13078	143356	004737	141302			JSR	PC,$$DFXDN	;STROBE DATA TO LATCHES
 13079	143362	104140				DFRDT
 13080	143364	000135				DRJ710			;FUNCTION TO READ J07,08,09,10
 13081	143366	017700	013732			MOV	@.DAT2,R0	;GET J DATA 7-10
 13082	143372	006200				ASR	R0		;RIGHT JUSTIFY
 13083	143374	006200				ASR	R0		;J-FIELD DATA
 13084	143376	042700	177700			BIC	#177700,R0	;CLEAR EXTRA
 13085	143402	110061	147476			MOVB	R0,RDRTMP(R1)	;SAVE DATA IN CORE
 13086	143406	005201				INC	R1		;INCREMENT INDEX
 13087					
 13088	143410	104140				DFRDT
 13089	143412	000133				DRAMAB			;FUNCTION TO READ "A" & "B" FIELD
 13090	143414	017700	013704			MOV	@.DAT2,R0	;GET A & B DATA
 13091	143420	006200				ASR	R0		;RIGHT JUSTIFY
 13092	143422	006200				ASR	R0		;IN R0
 13093	143424	042700	177700			BIC	#177700,R0	;CLEAR EXTRA
 13094	143430	110061	147476			MOVB	R0,RDRTMP(R1)	;STORE IN CORE
 13095	143434	005201				INC	R1		;INCREMENT INDEX
 13096					
 13097					;DECIDE IF THIS IS FIRST OR SECOND PASS
 13098					
 13099	143436	020127	000003			CMP	R1,#3		;INDEX UP TO 3 YET??
 13100	143442	002003				BGE	2$		;ON OUT IF YES
 13101						POP	R0		;IF NO,GET DRAM ADDRESS
 13102	143446	005200				INC	R0		;GET ODD HALF OF EVEN/ODD PAIR
 13103	143450	000736				BR	1$		;LOOP AGAIN
 13104					
 13105	143452	104140			2$:	DFRDT
 13106	143454	000134				DRJ1.4			;FUNCTION TO READ J01-J04
 13107	143456	017700	013642			MOV	@.DAT2,R0	;GET JDATA 01-04
 13108	143462	006200				ASR	R0		;RIGHT JUSTIFY
 13109	143464	006200				ASR	R0		;J1-J4 BITS
 13110	143466	042700	177760			BIC	#177760,R0	;CLEAR UNWANTED
 13111	143472	110037	147502			MOVB	R0,RDRTMP+4	;BIT SET TO CORE
 13112	143476	012700	147476			MOV	#RDRTMP,R0	;PASS BACK DATA ADDRESS IN R0
 13113						POP	R1		;RESTORE R
 13114						EXIT
 13115	143504	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 382
		BR11 PALII[KL,SYS]	Page 19 	RDRAM ROUTINE

 13116	143510	012703	147502		$DRAMAD: MOV	#DDRAM,R3	;GET ADDRESS OF EBUS DATA
 13117	143514	010304				MOV	R3,R4		;GET A COPY IN R4
 13118	143516	122424				CMPB	(R4)+,(R4)+	;INCREMENT IT TO DDRAM+2
 13119	143520	010002				MOV	R0,R2		;PUT ACTUAL ADDRESS IN R2
 13120	143522	005102				COM	R2		;READY TO TEST ADDR BITS 0-2
 13121	143524	032702	000700			BIT	#700,R2		;MAKE THE TEST
 13122	143530	001416				BEQ	1$		;BR IF ADDR IS 7XX
 13123					
 13124					;CODE FOR NON 7XX ADDRESSES
 13125					
 13126	143532	005102				COM	R2		;WAS NOT 7XX,SO FIX ADDRESS
 13127	143534	006302				ASL	R2		;JUSTIFY ADDRESS IN
 13128	143536	006302				ASL	R2		;CORRECT BIT POSITION
 13129	143540	006302				ASL	R2		;NEED THREE SHIFTS
 13130	143542	105024				CLRB	(R4)+		;INCREMENT TO DDRAM+3
 13131	143544	110224				MOVB	R2,(R4)+	;MOVE ADDR BITS 4-8 TO EBUS DATA
 13132	143546	000302				SWAB	R2		;GET THE REST OF THE BITS
 13133	143550	110214				MOVB	R2,(R4)		;MOVE ADDR BITS 0-3 TO EBUS DATA
 13134	143552	004737	142506		4$:	JSR	PC,$SPCMR	;SPECIAL MASTER RESET
 13135	143556	004537	143620			JSR	R5,WIRAR	;GO TO DO THE ACTUAL WRITE
 13136						EXIT
 13137	143562	000137	124064			  JMP	$EXIT
 13138					
 13139					;CODE FOR 7XX ADRESSES
 13140					
 13141	143566	005102			1$:	COM	R2		;FIX ADDRESS TO ORIGINAL STATE
 13142	143570	006002				ROR	R2		;PUT LOW ORDER BIT IN "C" BIT
 13143	143572	103402				BCS	2$		;"C" SET MEANS IR BIT 12 MUST=1
 13144					
 13145	143574	105024				CLRB	(R4)+		;NO "C" BIT MEANS IR BIT 12 MUST=0
 13146	143576	000402				BR	3$		;GO TO MOVE ADDRESS TO EBUS DATA
 13147					
 13148	143600	112724	000200		2$:	MOVB	#200,(R4)+	;SET IR BIT 12=1
 13149	143604	042702	000340		3$:	BIC	#340,R2
 13150	143610	110224				MOVB	R2,(R4)+	;MOVE D-RAM ADDR TO EBUS BIT POSITION 7-11
 13151	143612	112714	000016			MOVB	#16,(R4)	;SET THE 7 FROM 7XX IN EBUS DATA
 13152	143616	000755				BR	4$
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 383
		BR11 PALII[KL,SYS]	Page 20 	RDRAM ROUTINE

 13153					;WRITE THE IR
 13154					
 13155	143620	012701	147502		WIRAR:	MOV	#DDRAM,R1	;EBUS DATA ALWAYS AT DDRAM
 13156	143624	012700	000077		WIRAR1:	MOV	#LDAR,R0	;FUNCTION TO LOAD AR
 13157	143630	104121				DFWIR
 13158	143632	000205				RTS	R5
 13159					
 13160					;NOW FOR COMMON LITTLE PIECES OF THE LOADING OF THE DRAM
 13161					
 13162	143634	012700	000062		DATCOM:	MOV	#LDRAM3,R0	;GET DIAG FUN TO WRITE COMMON
 13163	143640	006301				ASL	R1		;JUSTIFY DATA FOR THE EBUS
 13164	143642	006301				ASL	R1
 13165	143644	000424				BR	CON2		;GO WRITE IT
 13166					
 13167	143646	012737	000061	147460	DATODD:	MOV	#LDRAM2,$DDRMS	;FUNCTION FOR J-FIELD A & B
 13168	143654	012700	000064			MOV	#LDRJOD,R0	;FUNCTION FOR J-FIELD ODD
 13169	143660	000405				BR	CON1		;GO
 13170	143662	012737	000060	147460	DATEVE:	MOV	#LDRAM1,$DDRMS	;FUNCTION FOR J-FIELD A & B
 13171	143670	012700	000063			MOV	#LDRJEV,R0	;FUNCTION J-FIELD EVEN
 13172	143674	006301			CON1:	ASL	R1		;JUSTIFY PIECE I'M
 13173	143676	006301				ASL	R1		;INTERESTED IN FOR J-DATA FIELDS
 13174						PUSH	R1		;SAVE DATA TO BE SENT
 13175	143702	004537	143716			JSR	R5,CON2		;WRITE J-DATA
 13176						POP	R1		;GET DATA AGAIN
 13177	143710	000301				SWAB	R1		;NOW I'VE GOT A & B
 13178	143712	013700	147460			MOV	$DDRMS,R0	;GET CORRECT DIAG FUNCTION, & WRITE
 13179					
 13180	143716	110137	147504		CON2:	MOVB	R1,DDRAM+2	;R1 ALWAYS HAS THE DATA
 13181	143722	012701	147502			MOV	#DDRAM,R1	;I ALWAYS PUT IT IN DDRAM
 13182	143726	104120				DFWRT
 13183	143730	000205				RTS	R5		;NOW WRITE
 13184					
 13185					;CLOCK DEFAULT PARAMETER ADDRESS
 13186					
 13187	143732	012700	157246		$CLKPRM:MOV	#CLKDFL,R0	;PUT ADDRESS IN R0
 13188						EXIT
 13189	143736	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 384
		BR11 PALII[KL,SYS]	Page 21 	M-BOX CLOCK BURST ROUTINE

 13190					.SBTTL	M-BOX CLOCK BURST ROUTINE
 13191					
 13192	143742	005037	147454		$BURST:	CLR	KLCLKR		;CLEAR KL10 CLOCK RUNNING
 13193	143746	012701	147456			MOV	#$STDAT,R1	;WORD POINTER TO R1
 13194	143752	010002				MOV	R0,R2		;BURST COUNT TO R2
 13195	143754	042702	177600			BIC	#177600,R2	;SAVE LOWER 7 BITS
 13196	143760	006100				ROL	R0
 13197	143762	000300				SWAB	R0
 13198	143764	005003				CLR	R3
 13199	143766	150003				BISB	R0,R3		;# OF 128. CLOCK MULTIPLES
 13200	143770	001425				BEQ	2$		;NONE, DO BURST
 13201					
 13202	143772	012777	000201	013350	1$:	MOV	#DCOMST!DFUNC!<STPCLK*1000>,@.DIAG1
 13203	144000	004737	141302			JSR	PC,$$DFXDN	;CLEAR BURST MODE
 13204	144004	005011				CLR	(R1)
 13205	144006	012700	000042			MOV	#LDBRR,R0
 13206	144012	104120				DFWRT			;CLEAR BURST REG RIGHT
 13207	144014	012711	000010			MOV	#10,(R1)
 13208	144020	012700	000043			MOV	#LDBRL,R0
 13209	144024	104120				DFWRT			;LOAD BURST REG LEFT
 13210	144026	012777	005201	013314		MOV	#DCOMST!DFUNC!<BRCLK*1000>,@.DIAG1
 13211	144034	004737	141302			JSR	PC,$$DFXDN	;BURST 128 CLOCKS
 13212	144040	005303				DEC	R3		;ANY MORE ?
 13213	144042	003353				BGT	1$		;YES, DO 128 MORE
 13214					
 13215	144044	012777	000201	013276	2$:	MOV	#DCOMST!DFUNC!<STPCLK*1000>,@.DIAG1
 13216	144052	004737	141302			JSR	PC,$$DFXDN	;CLEAR BURST MODE
 13217	144056	010203				MOV	R2,R3		;NUMBER LEFT TO DO
 13218	144060	042702	177760			BIC	#177760,R2
 13219	144064	010211				MOV	R2,(R1)
 13220	144066	012700	000042			MOV	#LDBRR,R0
 13221	144072	104120				DFWRT			;LOAD BURST REG RIGHT
 13222						SR	R3,4
 13223	144104	010311				MOV	R3,(R1)
 13224	144106	012700	000043			MOV	#LDBRL,R0
 13225	144112	104120				DFWRT			;LOAD BURST REG LEFT
 13226	144114	012777	005201	013226		MOV	#DCOMST!DFUNC!<BRCLK*1000>,@.DIAG1
 13227	144122	004737	141302			JSR	PC,$$DFXDN	;BURST THE CLOCK
 13228						EXIT
 13229	144126	000137	124064			  JMP	$EXIT
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 385
		BR11 PALII[KL,SYS]	Page 22 	LOAD AR ROUTINE

 13230					.SBTTL	LOAD AR ROUTINE
 13231					
 13232					; ROUTINE TO LOAD THE AR WITH AN INSTRUCTION TO BE EXECUTED.
 13233					; GETS THE MICROCODE TO THE HALT LOOP, AND THEN LINES UP THE
 13234					; MBOX PHASE CHANGE TIMING WITH EBOX SYNC BEFORE LOADING
 13235					; THE AR.  THE LATTER IS NECCESSARY IN ORDER TO MAKE INSTRUCTION
 13236					; EXECUTION REPEATABLE AT THE CLOCK TICK LEVEL FOR "TRACE" AND
 13237					; FOR THE MBOX DIAGNOSTIC.
 13238					
 13239	144132	010003			$LODAR:	MOV	R0,R3		;SAVE DATA POINTER
 13240	144134	012777	010201	013206		MOV	#DCOMST!DFUNC!<CLRRUN*1000>,@.DIAG1
 13241	144142	004737	141302			JSR	PC,$$DFXDN	;STOP EXECUTION
 13242	144146	012700	000177			MOV	#177,R0
 13243	144152	104131				BURST			;RUN CLOCK FOR FIXED PERIOD
 13244	144154	012777	004201	013166		MOV	#DCOMST!DFUNC!<CECLK*1000>,@.DIAG1
 13245	144162	004737	141302			JSR	PC,$$DFXDN	;GET EBOX CLOCK FALSE
 13246	144166	032777	001000	013154		BIT	#HALTLP,@.DIAG1
 13247	144174	001002				BNE	1$		;IF AT HALT LOOP
 13248					3$:	EXITERR
 13249	144176	000137	124036			  JMP	$EXITE
 13250					
 13251					; NOW CALL ROUTINE TO GET MBOX IN PHASE
 13252					
 13253	144202	004737	144266		1$:	JSR	PC,$MBPHS
 13254	144206	103001				BCC	2$		;BR IF ALL OK
 13255	144210	000772				BR	3$
 13256					
 13257	144212	010301			2$:	MOV	R3,R1
 13258	144214	012700	000077			MOV	#LDAR,R0
 13259	144220	104120				DFWRT			;LOAD AR
 13260						EXIT
 13261	144222	000137	124064			  JMP	$EXIT
 13262					
 13263					; SETMPH EMT ROUTINE TO SELECT WHICH MBOX PHASE TO SYNC UP TO
 13264					;DURING THE LODAR PROCESS. R0 SELECTS ONE OF FOUR PLACES TO SYNC.
 13265					; R0 = 0, A CHANGE COMING; R0 = 1, HALFWAY TWIXT A AND B
 13266					; R0 = 2, B CHANGE COMING; R0 = 3, HALFWAY TWIXT B AND A.
 13267					
 13268	144226	010037	157220		$SETMPH:MOV R0,$STODD		;SAVE FOR HALF-PHASE TEST
 13269	144232	042700	000001			BIC #BIT0,R0		;CLR ODD-EVEN BIT
 13270	144236	016037	144256	157214		MOV $STMTB(R0),$MPHDF	;SET DF VALUE FOR A OR B CHANGE
 13271	144244	016037	144262	157216		MOV $STMT1(R0),$MPHMK	;SET BIT MASK FOR A OR B CHANGE
 13272						EXIT
 13273	144252	000137	124064			  JMP	$EXIT
 13274					
 13275	144256	000162			$STMTB:	162			;A CHANGE COMING DF
 13276	144260	000163				163			;B CHANGE COMING DF
 13277					
 13278	144262	000010			$STMT1:	10			;A CHANGE COMING BIT MASK
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 386
		BR11 PALII[KL,SYS]	Page 22.1 	LOAD AR ROUTINE

 13279	144264	000400				400			;B CHANGE COMING BIT MASK
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 387
		BR11 PALII[KL,SYS]	Page 23 	MBOX PHASE ROUTINE

 13280					.SBTTL	MBOX PHASE ROUTINE
 13281					
 13282					; ROUTINE TO PHASE THE MBOX WITH THE EBOX HALT LOOP.
 13283					; MICROCODE ASSUMPTIONS: THE HALT LOOP IS TWO INSTRUCTIONS
 13284					;	THE FIRST IS AT AN EVEN ADDRESS AND HAS T=3T (these used to be labeled
 13285					;	THE SECOND IS AT AN ODD ADDRESS AND HAS T=2T  backwards)
 13286					; THIS CODE LOOKS FOR THE INTERSECTION OF THE EVEN ADDRESS,
 13287					; CLK SYNC TRUE, PHASE CHANGE COMING TRUE, AND THE SELECTED
 13288					; PHASE (A OR B CHANGE COMING). THE LATTER IS CHOSEN BY
 13289					; THE "SETMPH" EMT.
 13290					
 13291	144266	012702	000024		$MBPHS:	MOV	#20.,R2		;SET TIMOUT VALUE
 13292	144272	012701	000001		1$:	MOV	#1,R1		;SET TICK COUNTER
 13293	144276	104140				DFRDT
 13294	144300	000102				102
 13295	144302	032777	000004	013012		BIT	#BIT2,@.DAT3	;BIT 33, CLK SYNC H
 13296	144310	001442				BEQ	41$		;FALSE, TRY 1 CLOCK
 13297					
 13298	144312	104140				DFRDT
 13299	144314	000144				144
 13300	144316	032777	040000	013000		BIT	#BIT14,@.DAT2	;BIT 5, CR ADR 10 H
 13301	144324	001033				BNE	42$		;ODD, TRY 2 CLOCKS
 13302					
 13303	144326	104140				DFRDT
 13304	144330	000164				164
 13305	144332	032777	000040	012762		BIT	#BIT5,@.DAT3	;BIT 30,PHASE CHANGE COMING L
 13306	144340	001023				BNE	45$		;FALSE, TRY 5 CLOCKS
 13307					
 13308	144342	013700	157214			MOV $MPHDF,R0		;used to be MOVB  -- jbr 4/27
 13309	144346	104116				DFRD
 13310	144350	005000				CLR R0
 13311	144352	033777	157216	012742		BIT $MPHMK,@.DAT3	;EITHER A OR B CHANGE COMING L used to be bitb --jbr
 13312	144360	001402				BEQ 2$			;TRUE, EXIT
 13313	144362	012700	000012			MOV	#10.,R0		;NEED 10 CLOCKS
 13314	144366	032737	000001	157220	2$:	BIT	#BIT0,$STODD	;WANT HALFWAY BETWEEN?
 13315	144374	001402				BEQ	3$		;BR IF NOT
 13316	144376	062700	000005			ADD	#5,R0		;FIVE MORE TICKS THEN
 13317	144402	104131			3$:	BURST			;DO THIS BURST:0,5,10, OR 15
 13318	144404	000241				CLC
 13319	144406	000207				RTS	PC		;WE'RE THERE
 13320					
 13321	144410	062701	000003		45$:	ADD	#3,R1		;MAKE IT FOUR
 13322	144414	005201			42$:	INC	R1		;MAKE IT TWO OR FIVE
 13323	144416	010100			41$:	MOV	R1,R0
 13324	144420	104131				BURST			;DO ONE TWO OR FIVE
 13325	144422	005302				DEC	R2		;COUNT TIMEOUT
 13326	144424	001322				BNE	1$
 13327	144426	000261				SEC
 13328	144430	000207				RTS	PC		;TOOK TOO LONG, ERROR
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 388
		BR11 PALII[KL,SYS]	Page 24 	VMA, VMAH, PC & ADDRESS BREAK ROUTINE

 13329					.SBTTL	VMA, VMAH, PC & ADDRESS BREAK ROUTINE
 13330					
 13331					;ROUTINE TO READ ONE OF 4 REGISTERS ON THE VMA BOARD.
 13332					;ROUTINE RETURNS WITH R0 POINTING TO A 36 BIT WORD WITH
 13333					;THE DESIRED DATA JUSTIFIED AT BIT 35
 13334					
 13335	144432	012700	000157		$DFVMH:	MOV	#DPVMHD,R0	;FUNCTION TO READ VMA HELD
 13336	144436	000402				BR	$DFPC1
 13337	144440	012700	000153		$DFPC:	MOV	#DPPC,R0	;FUNCTION TO READ PC
 13338	144444	012705	000003		$DFPC1:	MOV	#3,R5
 13339	144450	012704	000273			MOV	#273,R4		;MASK FOR REGISTER OFFSET FROM BIT 35
 13340	144454	000410				BR	$VMPC
 13341	144456	012700	000157		$DFVMA:	MOV	#DPVMA,R0	;DIAG FUNCTION TO READ VMA
 13342	144462	000402				BR	$VMPC1
 13343	144464	012700	000153		$DFADB:	MOV	#DPADB,R0	;DIAG FUNCTION TO READ ADDRESS BREAK
 13344	144470	012704	000356		$VMPC1:	MOV	#356,R4
 13345	144474	005005				CLR	R5
 13346					$VMPC:	PUSH	R0
 13347	144500	012702	000004			MOV	#4,R2		;FOUR READS PER REGISTER
 13348	144504	012701	147550			MOV	#VMADAT,R1	;FIRST CLEAR ENTIRE 36-BIT BUFFER
 13349	144510	005021				CLR	(R1)+
 13350	144512	005021				CLR	(R1)+
 13351	144514	005021				CLR	(R1)+
 13352					
 13353	144516	012701	147532		1$:	MOV	#WREADY,R1	;PUT DFRD DATA HERE
 13354	144522	104117				DFRDMV
 13355	144524	012700	000005			MOV	#5,R0		;MASK RECEIVED DATA, FIVE BYTES WORTH
 13356	144530	140421			2$:	BICB	R4,(R1)+
 13357	144532	005300				DEC	R0
 13358	144534	003375				BGT	2$
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 389
		BR11 PALII[KL,SYS]	Page 25 	VMA, VMAH, PC & ADDRESS BREAK ROUTINE

 13359	144536	012701	147537			MOV	#WREADY+5,R1	;NOW MOVE READ DATA
 13360	144542	012700	147555			MOV	#VMADAT+5,R0	;TO VMA REGISTER DATA
 13361	144546	154140				BISB	-(R1),-(R0)
 13362	144550	154140				BISB	-(R1),-(R0)
 13363	144552	154140				BISB	-(R1),-(R0)
 13364	144554	154140				BISB	-(R1),-(R0)
 13365	144556	154140				BISB	-(R1),-(R0)
 13366	144560	106120				ROLB	(R0)+		;AND NOW SHIFT 35 BITS
 13367	144562	106120				ROLB	(R0)+		;BY ONE BIT
 13368	144564	106120				ROLB	(R0)+
 13369	144566	106120				ROLB	(R0)+
 13370	144570	106120				ROLB	(R0)+
 13371					
 13372	144572	005316				DEC	(SP)		;CREATE NEXT DIAG FUNCTION
 13373	144574	011600				MOV	(SP),R0		;TAKE IT OFF THE STACK
 13374	144576	005302				DEC	R2		;DONE FOUR FUNCTIONS YET?
 13375	144600	003346				BGT	1$		;BR IF MORE TO DO
 13376					
 13377					;ALL DONE READING DATA, NOW JUSTIFY CORRECTLY FOR THE RETURN MACHINE
 13378					
 13379	144602	012700	147555		3$:	MOV	#VMADAT+5,R0	;MUST CORRECT BY OFFSET AMOUNT
 13380	144606	106040				RORB	-(R0)
 13381	144610	106040				RORB	-(R0)
 13382	144612	106040				RORB	-(R0)
 13383	144614	106040				RORB	-(R0)
 13384	144616	106040				RORB	-(R0)
 13385	144620	005305				DEC	R5		;DONE YET?
 13386	144622	003367				BGT	3$		;BR IF NO
 13387					
 13388					;OFFSET MAY ORIGINALLY NEED TO BE GREATER THAN 0 IF
 13389					;VMA DIAG MIXERS NOT RIGHT JUSTIFIED AT EBUS BIT 35
 13390					
 13391					4$:	POP	R0
 13392	144626	012700	147550			MOV	#VMADAT,R0
 13393						EXIT
 13394	144632	000137	124064			  JMP	$EXIT
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 390
		KLDCP PAL[KL,SYS]	Page 5.10 	VMA, VMAH, PC & ADDRESS BREAK ROUTINE

 13395					
 13396								;Storage definitions
 13397					.INSRT	SBST11.PAL
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 391
		SBST11 PAL[KL,SYS]	Page 1 	VMA, VMAH, PC & ADDRESS BREAK ROUTINE

 13398				COMMENT ⊗   VALID 00009 PAGES
 13399				C REC  PAGE   DESCRIPTION
 13400				C00001 00001
 13401				C00002 00002	.SBTTL	*STORE* PROGRAM STORAGE FILE, 5-AUG-75
 13402				C00004 00003	BUFFER CREATION MACROS
 13403				C00005 00004	PROGRAM BUFFERS & STORAGE AREA
 13404				C00012 00005	COMMON STORAGE
 13405				C00017 00006	DECTAPE PARAMETER STORAGE
 13406				C00020 00007	TELETYPE BUFFERS
 13407				C00023 00008	CONSOLE PARAMETER STORAGE
 13408				C00025 00009	MISCELLANEOUS STORAGE
 13409				C00028 ENDMK
 13410					C⊗;
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 392
		SBST11 PAL[KL,SYS]	Page 2 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13411					.SBTTL	*STORE* PROGRAM STORAGE FILE, 5-AUG-75
 13412					
 13413					.MACRO	INFORM	A,B
 13414					.IF P2
 13415					.PRINT	\A=B
 13416					\
 13417					.ENDC
 13418					.ENDM
 13419					
 13420					
 13421					.IF	DF KLDCP
 13422					;DECISION TABLES FOR KL10/11 SUBROUTINE PACKAGE
 13423					
 13424					$DTBL0:
 13425	144636	   012			$LF:	.BYTE	12
 13426	144637	   015			$CR:	.BYTE	15
 13427	144640	   007			$BELL:	.BYTE	07
 13428	144641	   000				.BYTE	00
 13429		144642			.EVEN
 13430					
 13431	144642	144650			$DTBL1:	$LFTBL			;LINE FEED FILL TABLE
 13432	144644	144656				$CRTBL			;CARRIAGE RETURN FILL TABLE
 13433	144646	144664				$BELLT			;BELL FILL TABLE
 13434					
 13435	144650	   001		
 13436	144651	   001			$LFTBL:	.BYTE	1,1
 13437	144652	   002		
 13438	144653	   001				.BYTE	2,1
 13439	144654	   002		
 13440	144655	   004				.BYTE	2,4
 13441					
 13442	144656	   000		
 13443	144657	   000			$CRTBL:	.BYTE	0,0
 13444	144660	   011		
 13445	144661	   001				.BYTE	9.,1
 13446	144662	   002		
 13447	144663	   004				.BYTE	2,4
 13448					
 13449	144664	   002		
 13450	144665	   002			$BELLT:	.BYTE	2,2
 13451	144666	   002		
 13452	144667	   002				.BYTE	2,2
 13453	144670	   002		
 13454	144671	   002				.BYTE	2,2
 13455					
 13456	144672	023420			$DTBL:	10000.
 13457	144674	001750				1000.
 13458	144676	000144				100.
 13459	144700	000012				10.
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 393
		SBST11 PAL[KL,SYS]	Page 2.1 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13460	144702	000001				1.
 13461	144704	000001			$TBLL:	1.
 13462	144706	000012				10.
 13463	144710	000144				100.
 13464	144712	001750				1000.
 13465	144714	023420				10000.
 13466					
 13467					.ENDC	;IF DF KLDCP
 13468					
 13469					INFORM	PROGRAM END,\.
 13470					.IF P2
 13471				.PRINT	\PROGRAM END=144716
 13472					\
 13473					.ENDC
 13474					
 13475					;THIS SECTION CONTAINS ALL PROGRAM TEXT LITERALS
 13476					
 13477	144716	147306			$$FF:	$$CLIT
 13478					
 13479		144720			$$LITT=.
 13480		147306			$$$FF=$$CLIT
 13481					
 13482					INFORM LITERAL END,\$$CLIT
 13483					.IF P2
 13484				.PRINT	\LITERAL END=147306
 13485					\
 13486					.ENDC
 13487					
 13488					.IF P2
 13489		147306			.=$$CLIT
 13490					;PATCH:	.BLKW 40
 13491		147306			PATEND==.
 13492					.ENDC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 394
		SBST11 PAL[KL,SYS]	Page 3 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13493					;BUFFER CREATION MACROS
 13494					
 13495		157360			$$BUF==	COREND-420		;ROOM FOR STACK
 13496		157360			$$STKM==$$BUF			;Bottom boundary of stack
 13497					
 13498					;WORD BUFFER ASSIGNMENT MACRO
 13499					.MACRO	.BUFW	$BTAG,$BARG
 13500						.IIF	NE $$BUF&1,$$BUF==$$BUF-1
 13501						.IIF	B $BARG,$$BARG==1
 13502						.IIF	NB $BARG,$$BARG==$BARG
 13503						$$BUF==$$BUF-<$$BARG*2>
 13504						.NLIST
 13505						.LIST	ME	
 13506						.LIST
 13507					$BTAG==	$$BUF
 13508						.NLIST	ME
 13509					.ENDM
 13510					
 13511					;BYTE BUFFER ASSIGNMENT MACRO
 13512					.MACRO	.BUFB	$BTAG,$BARG
 13513						.IIF	B $BARG,$$BARG==1
 13514						.IIF	NB $BARG,$$BARG==$BARG
 13515						$$BUF==$$BUF-$$BARG
 13516						.NLIST
 13517						.LIST	ME
 13518						.LIST
 13519					$BTAG==	$$BUF
 13520						.NLIST	ME
 13521					.ENDM
 13522					
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 395
		SBST11 PAL[KL,SYS]	Page 4 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13523		157356			.DIAG3==	$$BUF
 13524		157354			.STDTE==	$$BUF
 13525		157352			.DIAG2==	$$BUF
 13526		157350			.DIAG1==	$$BUF
 13527		157346			.T11DT==	$$BUF
 13528		157344			.T10DT==	$$BUF
 13529		157342			.T11AD==	$$BUF
 13530		157340			.T10AD==	$$BUF
 13531		157336			.BC11==	$$BUF
 13532		157334			.BC10==	$$BUF
 13533		157332			.TENA2==	$$BUF
 13534		157330			.TENA1==	$$BUF
 13535		157326			.DAT1==	$$BUF
 13536		157324			.DAT2==	$$BUF
 13537		157322			.DAT3==	$$BUF
 13538		157320			.DELAY==	$$BUF
 13539		157316			$ONETM==	$$BUF
 13540		157314			$ILDSUM==	$$BUF
 13541		157312			$PWRCNT==	$$BUF
 13542		157310			DEVTYP==	$$BUF
 13543		157306			FLOPPY==	$$BUF
 13544		157304			LPTFLG==	$$BUF
 13545		157302			LPTYPE==	$$BUF
 13546		157300			RXUNIT==	$$BUF
 13547		157276			DTUNIT==	$$BUF
 13548		157274			RPUNIT==	$$BUF
 13549		157272			$BKFLG==	$$BUF
 13550		157264			CLKPE==	$$BUF
 13551		157262			PEBITS==	$$BUF
 13552		157254			PAGDFL==	$$BUF
 13553		157246			CLKDFL==	$$BUF
 13554		157240			SWS10==	$$BUF
 13555		157232			$SWS10==	$$BUF
 13556		157230			$$SWR==	$$BUF
 13557		157222			$$STJRS==	$$BUF
 13558		157220			$STODD==	$$BUF
 13559		157216			$MPHMK==	$$BUF
 13560		157214			$MPHDF==	$$BUF
 13561		157210			TGOADR==	$$BUF
 13562		157204			PGOADR==	$$BUF
 13563		157202			PGOCTL==	$$BUF
 13564		157200			SEADR==	$$BUF
 13565		157172			TIM11==	$$BUF
 13566		157164			TIMBAS==	$$BUF
 13567		157162			KTIMBS==	$$BUF
 13568		157160			CLKFLG==	$$BUF
 13569		157152			TIMTMP==	$$BUF
 13570		157144			TIMADR==	$$BUF
 13571		157142			TIMFLG==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 396
		SBST11 PAL[KL,SYS]	Page 4.1 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13572		157140			TMSFLG==	$$BUF
 13573		157136			T11DBF==	$$BUF
 13574		157134			DTEBSY==	$$BUF
 13575		157132			DTEBCT==	$$BUF
 13576		157130			EN0PKO==	$$BUF
 13577		157126			EN0ER1==	$$BUF
 13578		157124			EN0PER==	$$BUF
 13579		157122			EN0PKI==	$$BUF
 13580		157120			EN0ER2==	$$BUF
 13581		157116			EN0MEM==	$$BUF
 13582		157114			EN0TRY==	$$BUF
 13583		157110			EN0BUF==	$$BUF
 13584		157106			EN0IND==	$$BUF
 13585		157104			ENBCCF==	$$BUF
 13586		157076			COUN10==	$$BUF
 13587		157056			EN0DLY==	$$BUF
 13588		157052			TO10Q==	$$BUF
 13589		157046			ENETQ==	$$BUF
 13590		157042			FR10Q==	$$BUF
 13591		157036			FREEQ==	$$BUF
 13592		157034			QMPRQS==	$$BUF
 13593		157032			ENIHAD==	$$BUF
 13594		152272			BOOTBF==	$$BUF
 13595		152266			BOOTSA==	$$BUF
 13596		152262			BOOTBG==	$$BUF
 13597		152260			FSSTATE==	$$BUF
 13598		152256			FSTPTR==	$$BUF
 13599		152254			FSTYPR==	$$BUF
 13600		152242			FSRBUF==	$$BUF
 13601		152240			FSRPTR==	$$BUF
 13602		152236			FSFLG==	$$BUF
 13603		152234			FSCLKA==	$$BUF
 13604		152226			FSRTIM==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 397
		SBST11 PAL[KL,SYS]	Page 5 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13605		152224			$SWMON==	$$BUF
 13606		152222			MONCTL==	$$BUF
 13607		152220			TENSWD==	$$BUF
 13608		152216			TENCLK==	$$BUF
 13609		152214			PCMDFLG==	$$BUF
 13610		152212			PCMDNF==	$$BUF
 13611		152210			$ITERA==	$$BUF
 13612		152206			$ENDCT==	$$BUF
 13613		152204			$EOPCT==	$$BUF
 13614		152202			$ERRPC==	$$BUF
 13615		152200			$ERTTL==	$$BUF
 13616		152176			$ERFLG==	$$BUF
 13617		152174			$PASS==	$$BUF
 13618		152172			$CMTAG==	$$BUF
 13619		151172			DVBUF==	$$BUF
 13620		151166			EXTBF==	$$BUF
 13621		151160			NAMBF==	$$BUF
 13622		151156			DIRST4==	$$BUF
 13623		151154			DIRST3==	$$BUF
 13624		151152			DIRST2==	$$BUF
 13625		151150			DIRST1==	$$BUF
 13626		151146			DIRST0==	$$BUF
 13627		151144			DTEXT==	$$BUF
 13628		151136			DTEXTS==	$$BUF
 13629		151134			DTLNGTH==	$$BUF
 13630		151132			DTSTRT==	$$BUF
 13631		151130			DVADR==	$$BUF
 13632		151126			DVCNT==	$$BUF
 13633		151124			DVDIRF==	$$BUF
 13634		151122			CDADR==	$$BUF
 13635		151120			DIAFLG==	$$BUF
 13636		151116			RPEOF==	$$BUF
 13637		151110			WRTBAK==	$$BUF
 13638		151104			$RPINFO==	$$BUF
 13639		151076			NAMRAD==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 398
		SBST11 PAL[KL,SYS]	Page 6 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13640		151074			REVCNT==	$$BUF
 13641		151072			INTSW==	$$BUF
 13642		151070			$CKS11==	$$BUF
 13643		151066			LTMP==	$$BUF
 13644		151064			LBC==	$$BUF
 13645		151062			TRYCTR==	$$BUF
 13646		151060			DTXCMD==	$$BUF
 13647		151056			WCSAV==	$$BUF
 13648		151054			CASAV==	$$BUF
 13649		151052			DTBLK==	$$BUF
 13650		151050			LDATAE==	$$BUF
 13651		150744			LDATA==	$$BUF
 13652		150742			LDADR==	$$BUF
 13653		150740			LDCNT==	$$BUF
 13654		150736			LDOCTF==	$$BUF
 13655		150734			LDCNTL==	$$BUF
 13656		150732			LDOVRD==	$$BUF
 13657		150730			LDZBLK==	$$BUF
 13658		150726			SRTFLG==	$$BUF
 13659		150724			DEVLC==	$$BUF
 13660		150722			HLPPNT==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 399
		SBST11 PAL[KL,SYS]	Page 7 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13661		150720			$INPTR==	$$BUF
 13662		150716			$INPTC==	$$BUF
 13663		150500			$INBUF==	$$BUF
 13664		150476			$OUTPC==	$$BUF
 13665		150474			$OUTPT==	$$BUF
 13666		150472			$OUTPP==	$$BUF
 13667		150254			$OUTBF==	$$BUF
 13668		150252			$TNPTR==	$$BUF
 13669		150250			$TNPTC==	$$BUF
 13670		150032			$TNBUF==	$$BUF
 13671		150024			$TNCHR==	$$BUF
 13672		150022			TENTTY==	$$BUF
 13673		150020			$TTYIN==	$$BUF
 13674		150004			$TTSAV==	$$BUF
 13675		150002			$PRNTH==	$$BUF
 13676		150000			$PGWID==	$$BUF
 13677		147776			$TPLIN==	$$BUF
 13678		147774			$TPLIT==	$$BUF
 13679		147772			$XOFLG==	$$BUF
 13680		147770			CTRLOF==	$$BUF
 13681		147766			$EOLFLG==	$$BUF
 13682		147764			$TTLKF==	$$BUF
 13683		147762			TILNWF==	$$BUF
 13684		147760			$FORCE==	$$BUF
 13685		147756			$TTYFL==	$$BUF
 13686		147754			$0FLG==	$$BUF
 13687		147752			$NEG==	$$BUF
 13688		147750			$SVH==	$$BUF
 13689		147746			$SVM==	$$BUF
 13690		147744			$TICHR==	$$BUF
 13691		147742			$TOCHR==	$$BUF
 13692		147740			DDTFLG==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 400
		SBST11 PAL[KL,SYS]	Page 8 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13693		147736			$KONSP==	$$BUF
 13694		147734			ALLFLG==	$$BUF
 13695		147732			RPTFLG==	$$BUF
 13696		147730			VERIFY==	$$BUF
 13697		147726			.EADR==	$$BUF
 13698		147724			$ECADR==	$$BUF
 13699		147722			$EDADR==	$$BUF
 13700		147720			$ADR==	$$BUF
 13701		147716			$ADR1==	$$BUF
 13702		147710			.DFRDA==	$$BUF
 13703		147704			.DPXAD==	$$BUF
 13704		147700			L10ADR==	$$BUF
 13705		147672			$TEMP0==	$$BUF
 13706		147670			TENRUN==	$$BUF
 13707		147666			MONMODE==	$$BUF
 13708		147664			MTTYOF==	$$BUF
 13709		147662			$TTYTIM==	$$BUF
 13710		147660			KASIM==	$$BUF
 13711		147656			$PCSAV==	$$BUF
 13712		147654			$PSSAV==	$$BUF
 13713		147652			$SPSAV==	$$BUF
 13714		147650			$R5SAV==	$$BUF
 13715		147646			$R4SAV==	$$BUF
 13716		147644			$R3SAV==	$$BUF
 13717		147642			$R2SAV==	$$BUF
 13718		147640			$R1SAV==	$$BUF
 13719		147636			$R0SAV==	$$BUF
	KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 401
		SBST11 PAL[KL,SYS]	Page 9 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13720		147634			$EMADR==	$$BUF
 13721		147632			$SWTCH==	$$BUF
 13722		147630			$$SVSP==	$$BUF
 13723		147626			TEMP==	$$BUF
 13724		147624			IFILEF==	$$BUF
 13725		147622			IFINP==	$$BUF
 13726		147620			JFILEF==	$$BUF
 13727		147616			JFINP==	$$BUF
 13728		147614			PRGRUN==	$$BUF
 13729		147612			MEMPEF==	$$BUF
 13730		147610			.HCFLG==	$$BUF
 13731		147606			.HCADR==	$$BUF
 13732		147604			DDTTM1==	$$BUF
 13733		147602			DDTTM2==	$$BUF
 13734		147574			$ECMD==	$$BUF
 13735		147566			$SAV20==	$$BUF
 13736		147564			VRBFLG==	$$BUF
 13737		147556			ZEROS==	$$BUF
 13738		147550			VMADAT==	$$BUF
 13739		147546			XXDAT==	$$BUF
 13740		147540			MMDAT==	$$BUF
 13741		147532			WREADY==	$$BUF
 13742		147530			SIGNL==	$$BUF
 13743		147514			$BUFRC==	$$BUF
 13744		147512			SIGNL2==	$$BUF
 13745		147510			SIGNL3==	$$BUF
 13746		147502			DDRAM==	$$BUF
 13747		147476			RDRTMP==	$$BUF
 13748		147462			$DRAM==	$$BUF
 13749		147460			$DDRMS==	$$BUF
 13750		147456			$STDAT==	$$BUF
 13751		147454			KLCLKR==	$$BUF
 13752		147446			TENDAT==	$$BUF
 13753		147442			TENAC0==	$$BUF
 13754		147434			C10CW==	$$BUF
 13755		147426			CLKCNT==	$$BUF
 13756		147424			$TADSP==	$$BUF
 13757		147422			SWTDEP==	$$BUF
 13758		147422			BUFCLR==$$BUF
 13759					
 13760					.IF2
 13761		000114			.IFL $$BUF-PATEND
 13762					.PRINT \BUFFER STORAGE OVERLAPS LITERAL STORAGE, FLUSH SOMETHING!
 13763					\
 13764					INFORM OVERLAP,\PATEND-$$BUF
 13765					.IFF
 13766					INFORM FREE LITERAL/BUFFER SPACE,\$$BUF-PATEND
 13767					.IF P2
 13768				.PRINT	\FREE LITERAL/BUFFER SPACE=114
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 402
		SBST11 PAL[KL,SYS]	Page 9.1 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13769					\
 13770					.ENDC
 13771					.ENDC
 13772					.ENDC
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 403
		KLDCP PAL[KL,SYS]	Page 5.11 	*STORE* PROGRAM STORAGE FILE, 5-AUG-75

 13773					
 13774		100010			.END	$ILOAD		;initial startup in SUB11
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 404
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		ADH	000000		ERR11S	000002		DEXWD1	000006		EBUSPC	000020	
		PR0	000000		VBIT	000002		CLRMR	000006		INHPAG	000020	
		DLRDS	000000		BIT1	000002		QENBCC	000006		IOTVEC	000020	
		XEPT	000000		OPRSEL	000002		DLXBUF	000006		BIT04	000020	
		APR	000000		TCRNUM	000002		QENWC	000006		BPARER	000020	
		DLTDS	000000		DLRBUF	000002		CONSO	000007		BIT4	000020	
		STPCLK	000000		BIT01	000002		SETMR	000007		TBIT	000020	
		QCHN	000000		QSIZ	000002		BELL	000007		CDD	000020	
		RESVED	000000		DLDTR	000002		NBIT	000010		XON	000021	
		QNOPMS	000000		BLKO	000002		DLSTD	000010		CNTRLR	000022	
		BLKI	000000		DEXWD3	000002		BIT03	000010		TO11AD	000022	
		TEXTER	000000		QECHRQ	000002		PAG	000010		XOFF	000023	
		AC	000000		TO11ER	000002		$NB	000010		CNTRLT	000024	
		DLRCSR	000000		DATAO	000003		DIKL10	000010		TO10DT	000024	
		DLYCNT	000000		CNTRLC	000003		INTROF	000010		PWRVEC	000024	
		XR	000000		SECLK	000003		CLRRUN	000010		CNTRLU	000025	
		I	000000		QENPKT	000003		VEC03	000010		TO11DT	000026	
		NULL	000000		QENADR	000004		WEP	000010		ETB	000027	
		ADL	000000		BIT02	000004		RESVEC	000010		DIAG1	000030	
		TO10BM	000001		DEXDON	000004		MODDVC	000010		MSWCHR	000030	
		DVSASB	000001		BIT2	000004		BIT3	000010		CNTRLX	000030	
		MMPIE	000001		ZBIT	000004		TENAD1	000010		EMTVEC	000030	
		STRCLK	000001		DLRTS	000004		RM	000010		DIAG2	000032	
		DCSRT	000001		PI	000004		TAB	000011		CNTRLZ	000032	
		DATAI	000001		DTEMAX	000004		CNTRLI	000011		ALTMOD	000033	
		DLASB	000001		VEC02	000004		SETRUN	000011		STATUS	000034	
		BIT0	000001		TCRDAT	000004		CONBUT	000012		TRAPVE	000034	
		DTEDEF	000001		DLXCSR	000004		LF	000012		DIAG3	000036	
		TCASB	000001		INHCSH	000004		TENAD2	000012		PR1	000040	
		QECHRY	000001		ERRVEC	000004		CNTRLK	000013		INTRON	000040	
		TCDO	000001		EBUSPS	000004		VT	000013		DTESIZ	000040	
		CHAIN	000001		QREQ	000004		TRTVEC	000014		TXTINH	000040	
		DLBRK	000001		CECLK	000004		TCWDAT	000014		SPACE	000040	
		KLDCP	000001		CNTRLD	000004		IRLOAD	000014		D1011	000040	
		INTSON	000001		DLMAIN	000004		TO10BC	000014		BIT5	000040	
		DTEASB	000001		MMWWP	000004		CNTRLL	000014		DLDIE	000040	
		SYN	000001		DSEND	000004		CCA	000014		SCD	000040	
		KWASB	000001		DURE	000004		TBITVE	000014		BLANK	000040	
		CBIT	000001		DEXWD2	000004		BPTVEC	000014		BIT05	000040	
		DCOMST	000001		CONO	000004		FF	000014		NULSTP	000040	
		DLRE	000001		MMADDS	000005		DRLTCH	000015		LDBRR	000042	
		ERR11C	000001		CONI	000005		CR	000015		LDBRL	000043	
		BIT00	000001		QDTMSG	000005		TO11BC	000016		LDSEL	000044	
		CNTRLA	000001		DTESZS	000005		CNTRLO	000017		LDDIS	000045	
		NUPE	000002		BRCLK	000005		VEC04	000020		LDCHK1	000046	
		SSCLK	000002		QHDRSZ	000006		TO10AD	000020		LDCHK2	000047	
		CNUPE	000002		CONSZ	000006		DUPE	000020		LCRDAR	000051	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 405
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		LCRDAL	000052		DPBRX	000124		INT10S	000400		PMVER	003012	
		LCRAM5	000053		DPARX	000125		BIT8	000400		PTABLE	003020	
		LCRAM4	000054		DPADX	000126		BIT08	000400		RXCOPY	003020	
		COMMA	000054		DPAD	000127		TO10DB	000400		DTCOPY	003022	
		LCRAM3	000055		DPSC	000130		$STD	000440		WFILE	003024	
		LCRAM2	000056		DPSC1	000131		$DDT	000441		TAPT	003026	
		LCRAM1	000057		DPFE	000132		$STL	000442		DSKDIR	003030	
		SLASH	000057		DPFE1	000133		$STM	000443		REMOTE	003032	
		TKVEC	000060		DRAMAB	000133		$DTFLG	000444		BIT11	004000	
		LDRAM1	000060		BKSLH	000134		$DTCLK	000445		DLRA	004000	
		DLRIV	000060		DRJ1.4	000134		$DTTIM	000446		PRTOFF	004000	
		PULSE	000060		DRJ710	000135		$DTT11	000447		TCREV	004000	
		LDRAM2	000061		BKARW	000137		$DTF11	000450		ERRSTP	004000	
		LDRAM3	000062		PR3	000140		$DTCMD	000451		PNTLPT	004000	
		LDRJEV	000063		RCSPEC	000141		$DTSEQ	000452		INT11S	004000	
		DLTIV	000064		RCRAM4	000144		$DTOPR	000453		TCSELE	004000	
		TPVEC	000064		RCRAM3	000145		EN0BSZ	000454		DS04	004000	
		LDRJOD	000064		RCRAM2	000146		$DTCHR	000454		TO11DB	004000	
		DISIOJ	000065		RCRAM1	000147		$DTMTD	000455		MMADDM	007740	
		DISACF	000066		DPPC	000153		$DTMTI	000456		DLRDPE	010000	
		ENIOJA	000067		DPADB	000153		$DTSWR	000457		BIT12	010000	
		LDCHAN	000070		DPVMA	000157		$DTQMP	000460		RFMAD3	010000	
		LDMBXA	000071		DPVMHD	000157		HRLZI	000515		DEP	010000	
		LDAR	000077		DPERG	000167		HRRI	000541		RAMIS0	010000	
		BIT6	000100		RUBOUT	000177		DTEIV3	000760		TCILO	010000	
		DLTIE	000100		DLRD	000200		DTEIV2	000764		NOPNT	010000	
		DLRIE	000100		PR4	000200		DTEIV1	000770		ERR10C	010000	
		TO11	000100		TO11DN	000200		DTEIV0	000774		DLCD	010000	
		PR2	000100		DTE	000200		D11MPE	001000		DS03	010000	
		KWLIV	000100		DON11S	000200		BIT09	001000		TO11BM	020000	
		DON11C	000100		BIT07	000200		PERCLR	001000		BIT13	020000	
		READ0	000100		TO10	000200		BIT9	001000		DS02	020000	
		DRESET	000100		DFUNC	000200		TCDATM	001000		DLCTS	020000	
		TCIE	000100		DLTR	000200		DS06	001000		DLFE	020000	
		EBSEL	000100		PALERS	000200		LOOPER	001000		EXVIRT	020000	
		KWLKE	000100		BIT7	000200		HALTLP	001000		BYTE2	020000	
		BIT06	000100		TCRDY	000200		DING	002000		ERR10S	020000	
		RELIAB	000100		TC11	000214		TCBLKM	002000		TCMTE	020000	
		READ1	000101		PR5	000240		KLRUN	002000		TOTALS	020000	
		READ2	000102		JRST	000254		DLSRD	002000		RFMAD2	020000	
		READ3	000103		TA11	000260		DS05	002000		TO10ER	020000	
		DPFMA	000114		PR6	000300		DXWRD1	002000		UPECD	037000	
		MMLPIV	000114		PR7	000340		BIT10	002000		RSTART	040000	
		DPAR	000120		DLRDM	000377		INT11C	002000		CAB08	040000	
		DPBR	000121		DLTDM	000377		TOUTBF	003000		EDONES	040000	
		DPMQ	000122		ERSTOP	000400		PID	003004		DON10C	040000	
		DPFM	000123		DEX	000400		PDVER	003010		TCPAR	040000	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 406
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		XUPT	040000		TTCOCT	104010		RCRAM	104074		PLPT	104153	
		BIT14	040000		TTIDEC	104011		WWADR	104075		PLDBUF	104154	
		DLORE	040000		TTIYES	104012		MRESET	104076		R50UPK	104155	
		DLRI	040000		TTALTM	104013		TENSP	104077		DTINIT	104156	
		RFMAD1	040000		TTI36	104014		SM	104100		RPINIT	104157	
		ZSTOP	040000		TTIBRK	104015		EXCT	104101		DVDATA	104160	
		DS01	040000		TTISDL	104016		LODAR	104102		DTREAD	104161	
		USEVIR	060000		TTISDO	104017		EXAM	104103		RPREAD	104162	
		TCSOFT	063000		TTIS36	104020		EXAMT	104104		DVFRAM	104163	
		PHYS	100000		TTICRA	104021		DPOS	104105		DVWRD	104164	
		DLDSC	100000		TTITRM	104022		DPOST	104106		ASCR50	104165	
		ABORT	100000		TTBTRM	104023		DPOSVR	104107		RPLOAD	104166	
		MMERRF	100000		PNTAL	104024		DPOSVT	104110		RPFIND	104167	
		BIT15	100000		$PMSG	104025		D10MON	104111		RPLKUP	104170	
		SWSLFT	100000		$PMSGR	104026		D10ZRO	104112		RPRDFL	104171	
		PRGSRT	100000		PNTCHR	104027		DTEBAS	104113		RPWRFL	104172	
		TO10DN	100000		PNTNBR	104030		DFXCT	104114		RPWRIT	104173	
		DLERR	100000		PCRLF	104031		DFXCTT	104115		RPADDR	104174	
		DON10S	100000		PSPACE	104032		DFRD	104116		RPBASE	104175	
		RFMAD0	100000		PSLASH	104033		DFRDMV	104117		TENCHR	104176	
		INT10	100000		PCOMMA	104034		DFWRT	104120		PNTBAK	104177	
		TCERR	100000		PNTOCT	104035		DFWIR	104121		TTOCTE	104200	
		DS00	100000		PNTOCS	104036		DFSCLK	104122		TTERM	104201	
		$DIASX	101612		PNTDEC	104037		DFPC	104123		CLKPRM	104202	
		IFILX	101714		PNT18	104040		DFVMA	104124		MICNUL	104203	
		ALLEX1	102276		PNT22	104041		DFADB	104125		MICFIL	104204	
		$ALLMQ	102306		PNT23	104041		RDRAM	104126		DTWRT	104205	
		$ALLFM	102324		PNT36	104042		WDRAM	104127		NAMEXT	104206	
		$ALLAR	102414		PFORCE	104043		DRAMAD	104130		DTAFIL	104207	
		$ALARX	102430		PNORML	104044		BURST	104131		RPFILE	104210	
		$ALLAD	102464		PBELL	104045		PNTCPU	104132		DTRDFL	104211	
		$ALADX	102500		PNTODC	104046		PRGCMD	104133		DTWTFL	104212	
		$ALLBR	102526		PNTODT	104047		PNT36B	104134		DTBASE	104213	
		$ALBRX	102542		REGSAV	104050		ECLOK	104135		PNTCI	104214	
		$ALLPC	102642		REGRST	104051		ESYNC	104136		PNTRST	104215	
		$ALVMA	102760		CMPR36	104052		PNTADR	104137		PRGNPT	104216	
		$ALVMH	102776		SHIFTR	104053		DFRDT	104140		TTPINI	104217	
		$ALPCF	103024		SHIFTL	104054		DFWRTT	104141		TTILNW	104224	
		$ALLPI	103420		SETFLG	104055		PNTCRM	104142		TTICCL	104225	
		FATAL	104000		TDELAY	104056		PNTDRM	104143		DFLEGA	104226	
		ERRHLT	104001		SWITCH	104057		TTBACK	104144		PTAB	104227	
		PRGHLT	104002		SWTSAM	104060		TENSW	104145		RXFILE	104230	
		RUNLP	104003		EOP	104061		PROL36	104146		RXINIT	104231	
		TTILIN	104004		ERREOP	104062		SETMPH	104147		RXRDFL	104232	
		TTICHR	104005		EOPSET	104063		DFVMAH	104150		RXWTFL	104233	
		TTLOOK	104006		MULTPY	104072		PRINTT	104151		RXBASE	104234	
		TTIOCT	104007		WCRAM	104073		PTTY	104152		RXREAD	104235	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 407
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		RXWRT	104236		DTEADR	174400		$RPT	100456		.VMH	102774	
		RPERRO	104237		TCST	177340		$CMDER	100574		.ADB	103006	
		SIPNT	104466		TCCM	177342		$$CNTL	100602		.PCF	103022	
		.CSR	104646		TCCM1	177343		$$$CC	100624		PCF	103106	
		$$ST	106006		TCWC	177344		$KDCRE	100674		PCFTBL	103214	
		$$$ST	106204		TCBA	177346		$KDCEN	101140		.FE	103302	
		$TCX	112076		TCDT	177350		$DISPH	101142		$ALLFE	103304	
		DIARNL	112262		KWLKS	177546		.RPT	101410		.SC	103316	
		DIAEOF	112362		TTICSR	177560		.RPTX	101414		$ALLSC	103320	
		$P18X	117162		DLBA	177560		.RPTP	101422		FESCP	103330	
		$P23X	117166		TTIDBR	177562		$PRGNP	101444		.PI	103414	
		$$PEX2	117730		TTOCSR	177564		$PRGCM	101452		$ALPIG	103452	
		$$PSX2	117734		TTODBR	177566		$PRGXX	101456		$ALPIY	103462	
		$TILN1	120172		SWR	177570		PCMDE	101526		$ALPIX	103472	
		$TILN2	120222		STKLMT	177774		PCMDE1	101546		$ALPIH	103504	
		$$PEX4	122442		PS	177776		PCMDE3	101552		$ALPIO	103536	
		$EMTAE	123610		START	100000		PCMDE2	101572		.ALL	103550	
		$ALLEC	126274		$CNTLC	100004		$PCMDX	101606		$PNTCP	103600	
		$DDSIZ	127164		$ILOAD	100010		$TTICC	101636		$SP	103750	
		$$$NAM	131076		$CONSL	100014		IFILIN	101666		$RN	104000	
		$LLD2	132744		$TKS	100020		IFILX1	101724		$RNN	104002	
		$LRDIN	133200		$TKB	100022		JFILIN	101730		$RNX	104106	
		LD10VE	133252		$TPS	100024		IJFILX	101772		$DDTX	104112	
		$DTDI2	133636		$TPB	100026		.DFXCT	102014		$DDTER	104214	
		DAHLP	140316		$FSTKS	100030		.DFWRT	102032		$SI	104220	
		DAHLPD	140400		$FSTKB	100032		.DFX	102064		$DFLEG	104276	
		DADONE	140474		$FSTPS	100034		.FS	102070		.PL	104320	
		$$CLC	141110		$FSTPB	100036		$DFERR	102102		.PLX	104360	
		$$LITT	144720		$FSTRV	100040		.DFRD	102112		.SM	104364	
		$$ZZQ	145200		$FSTTV	100042		.DFDP	102236		.CI	104374	
		$$CLIT	147306		$CLKMD	100044		.DFDPC	102254		.CIF	104400	
		$$$FF	147306		$CLKHM	100046		ALLEXT	102262		.CF	104412	
		VFUDAT	151172		$CLKSE	100050		.MQ	102304		$$CI	104420	
		$ILDCL	152226		$CLKST	100052		.FM	102320		$$CF	104425	
		COREND	160000		$CLKTV	100054		$DPERR	102374		.XCT	104432	
		ENOWC	160020		TENMO	100056		.AR	102400		.XCT2	104540	
		ENOWA	160022		TDIAG	100064		.AD	102442		.XCT1	104544	
		ENOCSR	160024		TDDT	100070		.BR	102512		.XCTER	104566	
		ENODLY	160026		TLDR	100074		.ERG	102554		.CNSER	104576	
		ENIWC	160030		TMON	100100		$ALLEB	102570		.BU	104602	
		ENIWA	160032		EMTIMO	100104		.MRESE	102602		.CS	104632	
		ENICSR	160034		CONSL	100106		.DA	102610		.CCMN1	104704	
		ENIADR	160036		KONSL	100134		.DAX	102622		.CCMN	104710	
		MMLPBA	172100		$KONSL	100230		.PC	102626		.CSRER	104736	
		MMLPEA	172136		$$CONS	100332		PCVMAP	102714		.CR	104742	
		XORCR	174200		$KONS1	100364		.VM	102732		.PD	104774	
		XORSR	174202		$KONS2	100422		$DPER1	102770		$PEAR	105006	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 408
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		$PEFM	105017		MTTYCF	107356		C10CER	111140		$JC	113232	
		$PECR	105033		$MC	107364		C10C4	111154		SRT11X	113242	
		$PEDR	105051		MTTYS	107406		C10XXX	111336		SRT11	113250	
		$PEFS	105067		TENCMD	107416		C10C5	111342		SRT10	113324	
		.PE	105102		CMD10T	107466		C10CR1	111544		$COMNT	113344	
		.MU	105232		C10DON	107526		C10C6	111550		ADRERR	113350	
		.MM	105240		C10DNX	107552		RDCLK	111600		$PARA	113356	
		.MMC	105242		TENCER	107566		TCUINT	111760		$CMDE	113364	
		.MMX	105276		TENDEA	107710		$TENSW	111762		COMNER	113370	
		.MT	105312		$$TDX	107726		$TENCH	112106		.RI	113374	
		.CE	105400		$ALSTA	107732		P10CMD	112144		$TP	113404	
		.CEP	105532		C10TO	107772		DIASEL	112156		$TW	113412	
		.AC	105544		C10TI	110020		DIAFND	112226		$TPW	113416	
		DATPAG	105770		C10TIX	110056		$DIAFX	112230		$TPWF	113430	
		$ST	105776		C10TIE	110100		DIANF	112234		$TF	113434	
		$STERR	106242		C10TIZ	110106		DIARD	112242		$DECN	113452	
		$STTB1	106246		C10PNT	110146		.SE	112402		$OCTN	113452	
		.CNERR	106272		C10X	110164		.EE	112450		$FILPL	113452	
		.DP	106276		C10SW	110170		.EB	112456		$PARAM	113452	
		.DPNX1	106314		C10SWT	110204		.EEB	112460		FSRINT	113456	
		.DPCOM	106316		C10SW1	110214		.ZE	112632		FSINT1	113476	
		$VBX	106332		C10SW2	110222		.DE	112652		FSXIT	113526	
		.DPCM1	106336		C10SW0	110226		.DB	112660		FSINT2	113534	
		.DPNX	106346		C10SWE	110270		.DEB	112662		FSINT3	113616	
		.DPS	106362		$$C1	110274		$$PARA	112742		FSINT4	113626	
		$TENRN	106366		$SW	110300		$$CMDE	112746		FSXITA	113714	
		$VB	106404		C10DDT	110344		$VERIF	112752		FSIN4R	113716	
		$VB1	106426		C10PRG	110406		$LDT	112766		FSIN4D	113734	
		$KA	106440		C10PT	110422		$LDE	112776		FSIN4E	113770	
		.MZ	106450		C10P2	110462		$LDR	113006		FSIN4W	114022	
		.EXM	106622		C10P1	110466		$LDB	113016		HANGUP	114032	
		.EXCOM	106666		C10X1	110472		$LDD	113026		HANGU1	114040	
		.EXMSP	106770		C10P3	110476		$PROG	113036		FSHNG1	114110	
		.EXMNX	107004		C10P4	110504		$PROG2	113042		FSINT5	114120	
		.EXMN1	107016		C10P5	110510		$PROG1	113046		FSIN5A	114142	
		$RUNLP	107030		C10KAS	110530		$JFILE	113064		FSTINT	114160	
		MTTYIN	107200		KASET	110540		$IFILE	113104		FSTYP	114200	
		MTTYI0	107212		C10CLK	110574		$IIX	113112		FSTYP1	114216	
		MTTYI1	107222		C10CPT	110610		$HELP	113132		FSTYP2	114244	
		C10DN1	107260		C10C0	110630		$HELP1	113144		FSCLKR	114254	
		C10DN2	107266		C10CX	110634		$DT	113150		FSMSG	114424	
		MTTYER	107276		C10C3	110640		$RXX	113176		FSLOSM	114462	
		MTTYOC	107302		C10BCR	110654		$DTX	113202		PWORD	114474	
		MTTYO	107324		C10C1	110660		$DTC	113206		$HU	114500	
		MTTYP	107342		C10CX1	110664		$GO	113212		$$ILOA	114522	
		MTTYX	107346		C10C2	110714		$$GO	113216		$SBRIN	114570	
		MTTYC	107350		C10COP	110742		LDSTRT	113226		NOPAR	115154	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 409
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		$CMCLR	115156		$PNTOS	117374		$TI36C	122044		$DPOST	124234	
		$CKSUM	115174		$PNTO	117376		$MULTP	122060		$DPOS	124240	
		$EOP	115220		$PNTDE	117476		$TTIBR	122166		$DPOSX	124246	
		$EOPSE	115220		$$PEX1	117616		$$PEX5	122176		$DPSX1	124304	
		$ERREO	115220		$TTICH	117622		$TTSDL	122202		$EXAMT	124314	
		$PRGHL	115222		$TTIX1	117644		$TTSDX	122322		$EXAM	124322	
		$ERRHL	115232		$TTIX2	117652		$TTITR	122326		$EXAMX	124334	
		$PH2	115256		$TTLOO	117654		$TTBTR	122332		$EXDEP	124344	
		$PH1	115262		$TTALT	117702		$TTERM	122340		$$CLRF	125064	
		.HC	115466		$TTIYE	117746		TRMTAB	122400		$D10AD	125072	
		$PNTAL	115522		$PNTSP	117776		$TTCOC	122410		$EBPAR	125116	
		$PNTNB	115614		$TTBAC	120010		$TOCTE	122422		$DPSVT	125144	
		$PNTCH	115624		$SWITC	120026		$TTSDO	122434		$DPOSV	125150	
		$$PNTX	115630		$SWTSA	120040		$TTS36	122446		$DPVRY	125210	
		$PSPAC	115634		$PFORC	120046		$TICRA	122460		$DPVRX	125212	
		$PSLAS	115642		$PNORM	120054		$SHFTR	122474		$DPVRP	125220	
		$PCOMM	115650		$$PEX3	120060		$SHFTX	122506		$DPVRE	125232	
		$PTAB	115656		$TILRN	120064		$SHFTL	122512		$DPVRV	125242	
		$PLDBU	115664		$TILN3	120106		$$PMSR	122526		$CMP36	125316	
		$PNTBA	115770		$TTILN	120142		$$PMSG	122534		$10ADR	125352	
		$TTPIN	116006		$TTILI	120150		$PNTCI	122544		$SM	125400	
		$PNTRS	116022		$TILNX	120154		$DELAY	122564		$SMERR	125456	
		$PRINT	116040		$TIRUB	120374		.TD	122600		$SMTAB	125462	
		$PTTY	116174		$TICU	120442		$REGSA	122630		$XCT	125474	
		$PTTY1	116516		$TICR	120454		$REGRS	122644		$ECLOK	125544	
		$PTTY2	116532		$TIBEL	120462		$FATLE	122702		$TENSP	125616	
		$PTTYC	116546		$TIEXT	120464		$TIMOT	122712		CLKSTA	125746	
		$PTCO	116734		$TIALT	120506		$RESVD	122722		CLKINT	126054	
		$PCRLF	116742		$TIBKS	120520		$EOR	122730		$EC	126244	
		$PBELL	116750		$TICC	120524		$STUF	122754		$ECGET	126452	
		$PODT	116760		$TICL	120534		$NOTAS	123000		$PCRAM	126502	
		$PNTOD	116772		$TILF	120550		$EOR2	123004		$DCTPC	126522	
		$PODCD	117040		$TICO	120556		$FATAL	123014		$DCTP1	126526	
		$PADR	117046		$TICX	120570		$EMTRP	123024		$NEXT	126574	
		$$P23	117072		TILINC	120612		$EMTAD	123110		$END	126610	
		$PNT18	117114		TILINA	120632		$ESYNC	123610		$RC	126660	
		$PNT23	117130		$TIRDY	120670		$PWRDN	123616		$RCP	127010	
		$P23Y	117134		$TORDY	120776		$ILLUP	123624		$$ECA	127026	
		$P36B	117144		$TOOUT	121040		$PWRUP	123630		$DDNPR	127042	
		$PNT36	117154		$TTIOC	121074		$EXITE	124036		$DD	127046	
		$P36BX	117160		$$PEX6	121160		$SETFL	124046		$DRAMO	127210	
		$$PEX	117220		$$PEX7	121164		$EXITS	124056		$DDA	127434	
		$PRT36	117224		$TMINU	121170		$EXIT	124064		$DDB	127450	
		$P36MV	117306		$TTIDE	121232		MEMPE	124100		$EDNOA	127464	
		$PODMV	117326		$TTI36	121344		$D10ZR	124144		$EDODD	127470	
		$PROL3	117346		SHFT36	121766		$D10ZX	124200		$ED	127474	
		$PNTOC	117366		NEG36	122010		$D10MO	124204		$PDRAM	127600	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 410
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		$DCNCL	127732		LDELVN	131776		$DTXF3	134610		$QUEUE	137502	
		$DC	127736		LD11DN	132230		DTSRA	134710		QMPINI	137542	
		$CRMD0	130062		LDBIN	132242		DTSRE	134726		$RLCB	137722	
		$FJ	130160		LDBIN1	132244		DTSRF	134750		$RQCB	140046	
		$FT	130174		LDBIN2	132302		$DTXF4	134756		$SAVAL	140200	
		$FAR	130200		LDBINE	132320		DTER	135000		$SAVRG	140242	
		$FAD	130210		$LDBNE	132324		DTERA	135014		$SAVVR	140266	
		$FBR	130224		LDBIN3	132330		DTERB	135034		ACTLD2	140312	
		$FMQ	130230		LJMP	132432		DTERC	135044		ACTDON	140474	
		$FFM	130232		LDDRAM	132452		DTHDER	135054		$$C2	140516	
		$FSCAD	130236		LDCZRO	132610		DTREV	135066		ACTLDC	140522	
		$FSC	130250		LDCRAM	132642		DTREVC	135074		ACTBCK	140530	
		$FFE	130252		LDTEN	133052		DATINT	135114		ACTLDF	140536	
		$FSH	130254		LDTENZ	133076		$ASCR5	135124		ACTERR	140542	
		$FNUM	130260		LDRDIN	133150		LDBOOT	135266		IFILEP	140560	
		$FVMA	130272		LD10VR	133246		LDBLD2	135404		DTEINI	140620	
		$FMEM	130276		LD10V	133312		LDBDAT	135410		$PAGDF	140722	
		$FCOND	130304		LD10ER	133332		LDBXFR	135460		$STJRS	140730	
		DVLOAD	130314		DEVFIL	133350		$DS	135474		$DTEBA	140736	
		DEFEXT	130644		DTFIL	133402		DSVER	135666		$DFRDT	140746	
		$NAMEX	130700		$DTAFI	133430		ENOINT	135676		$DFRD	140760	
		$$NAM	131106		DTAFL1	133432		SNDEN	136010		$DFXX	141000	
		DTRPLD	131124		$DTDI1	133654		SNDENR	136016		$DFTIM	141044	
		LLD1	131140		$DI	133726		ENIINT	136102		$DFTMX	141070	
		LLD2	131150		$DTDIR	133746		ENISET	136270		$ECTIM	141100	
		LLD3	131160		$DVFRA	133772		ENICOP	136314		$DFTM1	141104	
		LLD4	131170		$DVDAT	134032		DTEINT	136356		$DXCTT	141114	
		LLDONE	131244		DVEOF	134066		DTE10D	136444		$DFSCL	141130	
		LDPROC	131306		$DVWRD	134110		DTE11D	136516		$DFXCT	141144	
		LDPRO1	131376		$DTINI	134134		REQLST	136574		$$DFX1	141210	
		LDPRO2	131446		$$DVX	134142		T11MSE	136612		$DFXFS	141250	
		LDPRO3	131452		$NONXF	134146		$DTNOP	136634		$KLCK1	141266	
		LDCLR	131470		$R50UP	134170		$ECHRY	136634		$$DFXD	141302	
		LDCNV	131474		$$$DVX	134366		$11ECH	136642		$KLCK3	141302	
		LDOCT	131574		$DTRDF	134370		$11ETH	136660		$KLCK4	141336	
		LDERR	131602		$$DTXE	134376		$11ADR	136676		$KLCK2	141340	
		LDEOL	131606		$DTRFL	134402		$ENBCC	136740		FFDEP	141356	
		LDCKSM	131610		$$DTX	134434		QGIVE	136766		$DFWIR	141360	
		LDTYPE	131654		$$DTXC	134440		QGET	137006		$DFWRT	141400	
		LDLTR	131672		$DTWTF	134444		QMPCMD	137034		$DFRDM	141570	
		$$LD11	131701		$DTINF	134466		$99	137044		$DWRTT	141620	
		$$COR	131715		$DTBAS	134472		QMPRY1	137110		LLIST	141640	
		$$ACT	131722		$DTREA	134500		QMPCXT	137162		$MRESE	141656	
		$$RAM	131727		$DTWRT	134506		QMPRTY	137170		$WWADR	142122	
		$$TEN	131745		$DTXFR	134512		SND10	137216		WRLIST	142250	
		$LINER	131762		$DTXF1	134524		QINI	137370		$WCRAM	142254	
		LDDONE	131772		$DTXF2	134576		$QCLR	137466		$STRCH	142422	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 411
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		$SPCMR	142506		R4	000004R		BUFCLR	147422H		$PCSAV	147656H	
		$SMRLS	142554		R5	000005R		SWTDEP	147422H		KASIM	147660H	
		$RCRAM	142564		SP	000006R		$TADSP	147424H		$TTYTI	147662H	
		$RDLST	143040		R6	000006R		CLKCNT	147426H		MTTYOF	147664H	
		$SQASH	143044		PC	000007R		C10CW	147434H		MONMOD	147666H	
		$MICNU	143132		RXASB	000000U		TENAC0	147442H		TENRUN	147670H	
		FLST	143212		PCKASB	000000U		TENDAT	147446H		$TEMP0	147672H	
		$MICFI	143220		MONASB	000000U		KLCLKR	147454H		L10ADR	147700H	
		$WDRAM	143270		UTLASB	000000U		$STDAT	147456H		.DPXAD	147704H	
		$RDRAM	143340		LPTASB	000000U		$DDRMS	147460H		.DFRDA	147710H	
		$DRAMA	143510		RPASB	000000U		$DRAM	147462H		$ADR1	147716H	
		WIRAR	143620		%%EOP	000000U		RDRTMP	147476H		$ADR	147720H	
		WIRAR1	143624		DVASB	000000U		DDRAM	147502H		$EDADR	147722H	
		DATCOM	143634		LPASB	000000U		SIGNL3	147510H		$ECADR	147724H	
		DATODD	143646		DTEBBD	000000U		SIGNL2	147512H		.EADR	147726H	
		DATEVE	143662		TAASB	000000U		$BUFRC	147514H		VERIFY	147730H	
		CON1	143674		FSCASB	000000U		SIGNL	147530H		RPTFLG	147732H	
		CON2	143716		BPTASB	000000U		WREADY	147532H		ALLFLG	147734H	
		$CLKPR	143732		DHASB	000000U		MMDAT	147540H		$KONSP	147736H	
		$BURST	143742		MCNVER	000000H		XXDAT	147546H		DDTFLG	147740H	
		$LODAR	144132		%%DDT	000001H		VMADAT	147550H		$TOCHR	147742H	
		$SETMP	144226		$$BARG	000001H		ZEROS	147556H		$TICHR	147744H	
		$STMTB	144256		CLKASB	000001H		VRBFLG	147564H		$SVM	147746H	
		$STMT1	144262		TELASB	000001H		$SAV20	147566H		$SVH	147750H	
		$MBPHS	144266		EPTREL	000001H		$ECMD	147574H		$NEG	147752H	
		$DFVMH	144432		BOOASB	000001H		DDTTM2	147602H		$0FLG	147754H	
		$DFPC	144440		%%QMP	000001H		DDTTM1	147604H		$TTYFL	147756H	
		$DFPC1	144444		PWLEN	000004H		.HCADR	147606H		$FORCE	147760H	
		$DFVMA	144456		SAILVR	000007H		.HCFLG	147610H		TILNWF	147762H	
		$DFADB	144464		DECVER	000010H		MEMPEF	147612H		$TTLKF	147764H	
		$VMPC1	144470		QENMSG	000010H		PRGRUN	147614H		$EOLFL	147766H	
		$VMPC	144476		LLISTL	000012H		JFINP	147616H		CTRLOF	147770H	
		$DTBL0	144636		FSRLEN	000012H		JFILEF	147620H		$XOFLG	147772H	
		$LF	144636		REQMAX	000016H		IFINP	147622H		$TPLIT	147774H	
		$CR	144637		CPUPR	000140H		IFILEF	147624H		$TPLIN	147776H	
		$BELL	144640		BOOTWD	000620H		TEMP	147626H		$PGWID	150000H	
		$DTBL1	144642		XMEMSZ	001000H		$$SVSP	147630H		$PRNTH	150002H	
		$LFTBL	144650		BOOTSZ	002260H		$SWTCH	147632H		$TTSAV	150004H	
		$CRTBL	144656		FREEAD	003000H		$EMADR	147634H		$TTYIN	150020H	
		$BELLT	144664		FREESZ	020000H		$R0SAV	147636H		TENTTY	150022H	
		$DTBL	144672		FREEND	023000H		$R1SAV	147640H		$TNCHR	150024H	
		$TBLL	144704		%DDTS	077766H		$R2SAV	147642H		$TNBUF	150032H	
		$$FF	144716		CONSOL	100000H		$R3SAV	147644H		$TNPTC	150250H	
		R0	000000R		$RP	100574H		$R4SAV	147646H		$TNPTR	150252H	
		R1	000001R		RPFIL	100574H		$R5SAV	147650H		$OUTBF	150254H	
		R2	000002R		PATEND	147306H		$SPSAV	147652H		$OUTPP	150472H	
		R3	000003R		$$BUF	147422H		$PSSAV	147654H		$OUTPT	150474H	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 412
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      

		$OUTPC	150476H		$PASS	152174H		TIMADR	157144H		.DIAG3	157356H	
		$INBUF	150500H		$ERFLG	152176H		TIMTMP	157152H		$$STKM	157360H	
		$INPTC	150716H		$ERTTL	152200H		CLKFLG	157160H		STACK	157776H	
		$INPTR	150720H		$ERRPC	152202H		KTIMBS	157162H		FUQ	000000H	
		HLPPNT	150722H		$EOPCT	152204H		TIMBAS	157164H	
		DEVLC	150724H		$ENDCT	152206H		TIM11	157172H	
		SRTFLG	150726H		$ITERA	152210H		SEADR	157200H	
		LDZBLK	150730H		PCMDNF	152212H		PGOCTL	157202H	
		LDOVRD	150732H		PCMDFL	152214H		PGOADR	157204H	
		LDCNTL	150734H		TENCLK	152216H		TGOADR	157210H	
		LDOCTF	150736H		TENSWD	152220H		$MPHDF	157214H	
		LDCNT	150740H		MONCTL	152222H		$MPHMK	157216H	
		LDADR	150742H		$SWMON	152224H		$STODD	157220H	
		LDATA	150744H		FSRTIM	152226H		$$STJR	157222H	
		LDATAE	151050H		FSCLKA	152234H		$$SWR	157230H	
		DTBLK	151052H		FSFLG	152236H		$SWS10	157232H	
		CASAV	151054H		FSRPTR	152240H		SWS10	157240H	
		WCSAV	151056H		FSRBUF	152242H		CLKDFL	157246H	
		DTXCMD	151060H		FSTYPR	152254H		PAGDFL	157254H	
		TRYCTR	151062H		FSTPTR	152256H		PEBITS	157262H	
		LBC	151064H		FSSTAT	152260H		CLKPE	157264H	
		LTMP	151066H		BOOTBG	152262H		$BKFLG	157272H	
		$CKS11	151070H		BOOTSA	152266H		RPUNIT	157274H	
		INTSW	151072H		BOOTBF	152272H		DTUNIT	157276H	
		REVCNT	151074H		ENIHAD	157032H		RXUNIT	157300H	
		NAMRAD	151076H		QMPRQS	157034H		LPTYPE	157302H	
		$RPINF	151104H		FREEQ	157036H		LPTFLG	157304H	
		WRTBAK	151110H		FR10Q	157042H		FLOPPY	157306H	
		RPEOF	151116H		ENETQ	157046H		DEVTYP	157310H	
		DIAFLG	151120H		TO10Q	157052H		$PWRCN	157312H	
		CDADR	151122H		EN0DLY	157056H		$ILDSU	157314H	
		DVDIRF	151124H		COUN10	157076H		$ONETM	157316H	
		DVCNT	151126H		ENBCCF	157104H		.DELAY	157320H	
		DVADR	151130H		EN0IND	157106H		.DAT3	157322H	
		DTSTRT	151132H		EN0BUF	157110H		.DAT2	157324H	
		DTLNGT	151134H		EN0TRY	157114H		.DAT1	157326H	
		DTEXTS	151136H		EN0MEM	157116H		.TENA1	157330H	
		DTEXT	151144H		EN0ER2	157120H		.TENA2	157332H	
		DIRST0	151146H		EN0PKI	157122H		.BC10	157334H	
		DIRST1	151150H		EN0PER	157124H		.BC11	157336H	
		DIRST2	151152H		EN0ER1	157126H		.T10AD	157340H	
		DIRST3	151154H		EN0PKO	157130H		.T11AD	157342H	
		DIRST4	151156H		DTEBCT	157132H		.T10DT	157344H	
		NAMBF	151160H		DTEBSY	157134H		.T11DT	157346H	
		EXTBF	151166H		T11DBF	157136H		.DIAG1	157350H	
		DVBUF	151172H		TMSFLG	157140H		.DIAG2	157352H	
		$CMTAG	152172H		TIMFLG	157142H		.STDTE	157354H	
		KLDCP	WAITS KL10/PDP-11 CONSOLE PROGRAM, VER 0.10	PALX 251	02/16/82  17:00:01	Page 413
		KLDCP PAL[KL,SYS]	Page 5 	***Symbol Table***      


	1.5 Words Average Instruction Length

	20 Seconds Runtime

ABORT	   192#
AC	 12447#	 12452
ACTBCK	  9870
ACTERR	 11976	 11980
ACTLD2	  5312	 11930	 12363
ACTLDC	  9824
ACTLDF	  9858
ADH	  3711#	  3719	  3736#	  3744	  4186#	  4196	  4289#	  4305#	  4307	  4324#
	  4340	  4357#	  4365	  4382#	  4390	  8503#	  8519	  8672#	  8688#	  8690
	  8707#	  8723	 12436#	 12452
ADL	  3712#	  3717	  3718	  3718#	  3719	  3737#	  3742	  3743	  3743#	  3744
	  4187#	  4192	  4193	  4193#	  4194	  4195	  4195#	  4196	  4290#	  4295
	  4296	  4296#	  4297	  4298	  4298#	  4299	  4300	  4300#	  4301	  4302
	  4302#	  4303	  4304	  4304#	  4305	  4306	  4306#	  4307	  4325#	  4330
	  4331	  4331#	  4332	  4333	  4333#	  4334	  4335	  4335#	  4336	  4337
	  4337#	  4338	  4339	  4339#	  4340	  4358#	  4363	  4364	  4364#	  4365
	  4383#	  4388	  4389	  4389#	  4390	  8504#	  8509	  8510	  8510#	  8511
	  8512	  8512#	  8513	  8514	  8514#	  8515	  8516	  8516#	  8517	  8518
	  8518#	  8519	  8673#	  8678	  8679	  8679#	  8680	  8681	  8681#	  8682
	  8683	  8683#	  8684	  8685	  8685#	  8686	  8687	  8687#	  8688	  8689
	  8689#	  8690	  8708#	  8713	  8714	  8714#	  8715	  8716	  8716#	  8717
	  8718	  8718#	  8719	  8720	  8720#	  8721	  8722	  8722#	  8723	 12437#
	 12443	 12444	 12444#	 12452
ADRERR	  5597	  7821	  9086	  9202	  9214	 13058
ALLEX1	  2888#	  3043	  3100
ALLEXT	  2874	  3440	  8958
ALLFLG	  2088	  2884	  3041	  3098	  3449	  3503	  3534	  4775	  4784	  8927
	  9011	 13694#
ALTMOD	   698#	  2039	  7113	  7123	  7300	  7340	  7782
APR	  3707#	  3732#	  4182#	  4285#	  4307	  4320#	  4353#	  4378#	  8499#	  8519
	  8668#	  8690	  8703#
ASCR50	   311#
BELL	   677#	  6552	  6855	  7339
BIT0	   624#	   781	   782	   811	   845	   863	  1472	  1504	  1520	  1699
	 13269	 13314
BIT00	   623#	   624
BIT01	   625#	   626
BIT02	   627#	   628
BIT03	   629#	   630
BIT04	   631#	   632
BIT05	   633#	   634
BIT06	   636#	   637
BIT07	   638#	   639
BIT08	   640#	   641
BIT09	   643#	   644
BIT1	   626#	   810	   826	   844	   862	  1503	  1702	  8784
BIT10	   645#	   776	   796	   827	   835	   853	  1497	  1705	  8435
BIT11	   646#	   759	   775	   797	   827	   834	   852	  1496	  1697	  1703
	  8441
BIT12	   648#	   758	   774	   818	   827	   833	   851	  1495	  1511	  1696
	  8429	 10778
BIT13	   649#	   755	   757	   766	   767	   773	   817	   827	   832	   850
	  1494	  1510	  1707
BIT14	   650#	   755	   756	   765	   772	   800	   816	   823	   831	  1493
	  1509	  1704	 10222	 12769	 12774	 13300
BIT15	   652#	   754	   764	   771	   815	   822	   830	   849	  1466	  1492
	  1508	  1708	 12774
BIT2	   628#	   783	   794	   825	   843	   861	  1471	  1502	  1519	  1700
	  1701	  8753	  8794	 13295
BIT3	   630#	   784	   793	   809	   842	   860	  1501	  1701	 12736
BIT4	   632#	   779	   792	   808	   824	   841	   859
BIT5	   634#	   779	   785	   807	   840	   858	  1500	  4738	  4745	  4752
	  4759	 13305
BIT6	   637#	   791	   801	   839	   857	  1499	  1518	  1698
BIT7	   639#	   778	   789	   838	   856	  1498	  1517	  1709
BIT8	   641#	   790	   837	   855
BIT9	   644#	   777	   795	   827	   836	   854	  1706
BKARW	   683#	  6494
BKSLH	   682#	  6496	  7251	  7267	  7346
BLANK	   678#	  6657	  6709	  7566	  7730
BLKI	  3701#	  3726#	  4176#	  4279#	  4314#	  4347#	  4372#	  8493#	  8662#	  8697#
BLKO	  3699#	  3724#	  3744	  4174#	  4277#	  4312#	  4345#	  4370#	  8491#	  8660#
	  8695#
BOOASB	    62#	  2407	  2479	  2581	  2628	 10857	 10873	 13594
BOOTBF	 10900	 10916	 10955	 13594#
BOOTBG	 10882	 10883	 10911	 10952	 10953	 13596#
BOOTSA	 10922	 10923	 10928	 10930	 10967	 10968	 13595#
BOOTSZ	  1842#	 10893	 10901	 13594
BOOTWD	  1841#	  1842	 10954
BPARER	   859#	  8474
BPTASB	  2454	  2615	  6096	  6201	  6253	  6481	 13605
BPTVEC	   598#
BRCLK	   873#	 13210	 13226
BUFCLR	  6232	 13758#
BURST	   414#	  3820	 13243	 13317	 13324
BYTE2	   766#
C10BCR	  4942
C10C0	  4970
C10C1	  4971
C10C2	  4972
C10C3	  4973
C10C4	  4975
C10C5	  4976
C10C6	  4978
C10CER	  4979	  4994	  5022	  5042	  5055	  5070	  5088	  5093	  5104	  5138
	  5149	  5160
C10CLK	  4695
C10COP	  4569	  6623	  6659	  6695	  6820	  7210
C10CPT	  4968
C10CR1	  5170
C10CW	  5021	  5064	 13754#
C10CX	  4943	  4995
C10CX1	  5024
C10DDT	  4700
C10DN1	  4640
C10DN2	  4717
C10DNX	  4684	  4706	  4707	  4708	  4716	  4920	  4921	  4922	  4923	  4924
	  4925
C10DON	  4650	  4795	  4812	  4834	  4929	  4946	  4987	  5014	  5117	  5347
	 11427
C10KAS	  4919
C10P1	  4911
C10P2	  4912
C10P3	  4913
C10P4	  4914
C10P5	  4915
C10PNT	  4699
C10PRG	  4694
C10PT	  4908
C10SW	  4696
C10SW0	  4842	  4845	  4849
C10SW1	  4843
C10SW2	  4844
C10SWE	  4224	  4857	  4879	  4883
C10SWT	  4840
C10TI	  4698	  4826
C10TIE	  4630
C10TIX	  4672	  4828	  4901	  5301
C10TIZ	  4799	  4801
C10TO	  4693	  4697
C10X	  4860	  4865	  4935
C10XXX	  5159	  5171
CAB08	   823#
CASAV	 10659	 10671	 10695	 13648#
CBIT	   573#	  8285	  8417	  8476	  8575	  8578	  8581	  8612	  8759
CCA	  3710#	  3719	  3735#	  3744	  4185#	  4288#	  4323#	  4356#	  4381#	  8502#
	  8671#	  8706#
CDADR	 13634#
CDD	   808#
CECLK	   870#	  8762	 12743	 13244
CHAIN	   212#	  9813
CLKASB	    65#	   101	  1883	  4977	  5046	  5162	  6228	 12711	 13571
CLKCNT	  4993	  5010	  5059	  5060	  5061	  5064	 13755#
CLKDFL	  3828	  3842	  3843	  3850	  3860	  3867	  4048	  4055	  4941	  6164
	 10946	 12723	 13187	 13553#
CLKFLG	  5005	  5006	  5032	  5034	  8249	  8250	  8252	  8276	  8823	  8834
	 13568#
CLKINT	  8812
CLKPE	  3558	  3564	  3565	  3568	  3572	  3574	 13550#
CLKPRM	   412#
CLKSTA	  6214	  8223
CLRMR	   871#	 12745	 12896
CLRRUN	   919#	  3020	  3084	  8772	 13240
CMD10T	  4691
CMPR36	   387#	  8566	 10365
CNTRLA	   688#
CNTRLC	   689#	  4468	  6807	  7345	  8268	 10713
CNTRLD	   690#
CNTRLI	   672#	  6653
CNTRLK	   691#
CNTRLL	   692#	  6829	  7343
CNTRLO	   686#	  6816	  7348
CNTRLR	   693#
CNTRLT	   694#
CNTRLU	   687#	  7344
CNTRLX	   695#	  6834	  7351
CNTRLZ	   696#
CNUPE	   810#
COMMA	   680#	  2840	  5388	  6533	  7780
COMNER	  5672	  5677
CON1	 13169
CON2	 13165	 13175
CONBUT	   921#	  3033	  3094	  3582	  3629	  3771	  3801	  8729
CONI	  3704#	  3729#	  4179#	  4282#	  4317#	  4350#	  4375#	  8496#	  8665#	  8700#
CONO	  3703#	  3728#	  4178#	  4281#	  4307	  4316#	  4340	  4349#	  4365	  4374#
	  8495#	  8519	  8664#	  8690	  8699#	  8723
CONSL	  2764	  6311	 11951
CONSO	  3706#	  3731#	  4181#	  4284#	  4319#	  4352#	  4377#	  8498#	  8667#	  8702#
CONSOL	   571	  5509	  5523	  6238	  8228
CONSZ	  3705#	  3730#	  4180#	  4283#	  4318#	  4351#	  4376#	  8497#	  8666#	  8701#
COREND	    79#	  6460	 13495
COUN10	 11490	 11501	 13586#
CPUPR	   665#	  1991	  6170	  6215	  8220	  8813
CR	   676#	  2041	  2734	  6502	  6607	  6611	  6643	  6683	  7337	  7781
CTRLOF	  6509	  6604	  6641	  6660	  6670	  6818	  7189	  7323	 13680#
D1011	   785#
D10MON	   384#	  4621	  4636	  4714	  5068	  5343
D10ZRO	   385#	  4237	  4464	  4477	 10302
D11MPE	   854#
DADONE	  9960	 11962#
DAHLP	  9789	 11910#
DAHLPD	 10572	 11936#
DATAI	  3702#	  3719	  3727#	  4177#	  4280#	  4315#	  4348#	  4373#	  8494#	  8663#
	  8698#
DATAO	  3700#	  3725#	  4175#	  4196	  4278#	  4313#	  4346#	  4371#	  4390	  8492#
	  8661#	  8696#
DATCOM	 13069
DATEVE	 13065
DATINT	 10724
DATODD	 13067
DATPAG	  4146
DCOMST	   781#	  8772	 12472	 12476	 12531	 12545	 12549	 12563	 12571	 12575
	 12587	 12595	 12647	 12738	 12743	 12745	 12893	 12894	 12895	 12896
	 12903	 13077	 13202	 13210	 13215	 13226	 13240	 13244
DCSRT	   782#
DDRAM	 13116	 13155	 13180	 13181	 13746#
DDTFLG	  2005	  4594	  4598	  4797	  4833	  4891	 13692#
DDTTM1	 13732#
DDTTM2	  4560	  4596	 13733#
DECVER	    13#
DEFEXT	  9572	  9573
DEP	   758#	  8357	  8370	  8465	 12590
DEVFIL	  5297	  9615
DEVLC	  9785	  9786	  9809	 10377	 11913	 11989	 13659#
DEVTYP	  2132	  5551	 10380	 10505	 13542#
DEX	   790#
DEXDON	   861#	  8396	 12637
DEXWD1	   726#
DEXWD2	   725#
DEXWD3	   724#
DFADB	   405#	  3076
DFLEGA	   220#	  2795	  2805	  2822	  2834	  2875	  2901	  3003	  3045	  3071
	  3417	  3443	  3497	  3599	  3655	  3684	  3814	  3844	  3995	  4013
	  4094	  4199	  4451	  8893	  9018	  9077	  9204	  9296
DFPC	   403#	  3025	  3037
DFRD	   393#	  3111	  3419	  3427	  8428	 12661	 12910	 13309
DFRDMV	   395#	  2859	  2877	  9057	 13354
DFRDT	   394#	  2908	  3459	  3474	  3487	  3603	  4736	  4743	  4750	  4757
	  8751	  8782	  8792	  8908	  8912	 12734	 12952	 13079	 13088	 13105
	 13293	 13298	 13303
DFSCLK	   401#	  8750	  9042	  9043
DFUNC	   778#	  8772	 12472	 12531	 12545	 12563	 12571	 12587	 12595	 12647
	 12738	 12743	 12745	 12893	 12894	 12895	 12896	 12903	 13077	 13202
	 13210	 13215	 13226	 13240	 13244
DFVMA	   404#	  3058
DFVMAH	   406#	  3068
DFWIR	   399#	 13157
DFWRT	   397#	  2816	 12594	 12757	 12760	 12782	 12789	 12839	 13012	 13043
	 13182	 13206	 13209	 13221	 13225	 13259
DFWRTT	   398#	  3567	  3573	  3849	 12722	 12850
DFXCT	   390#	  2800
DFXCTT	   391#	  2824	  3019	  3022	  3028	  3030	  3032	  3083	  3086	  3089
	  3091	  3093	  3577	  3579	  3581	  3628	  3639	  3770	  3800	  8633
	  8728	  8730	  8761
DHASB	  1531
DIAEOF	  5341#	 11939
DIAFLG	  2125	  5295	 10592	 11911	 11937	 13635#
DIAFND	  5279	 11915
DIAG1	   738#
DIAG2	   739#
DIAG3	   741#
DIANF	  5278	 10594
DIARD	  4917
DIARNL	  5311	  5314#	 11916
DIASEL	  4916
DIKL10	   784#	 12472	 12632	 12647
DING	   199#
DIRST0	 10430	 10439	 13626#
DIRST1	 10431	 10443	 13625#
DIRST2	 10440	 10455	 10484	 10488	 13624#
DIRST3	 10444	 13623#
DIRST4	 13622#
DISACF	   898#
DISIOJ	   897#
DLASB	    53#	  1478
DLBA	  1484#
DLBRK	  1520#
DLCD	  1495#	  5867	  5946
DLCTS	  1494#	  5869	  5880	  5884	  5944	  5970	  7394	  7418	  7441
DLDIE	  1500#	  5941	  6224	  8237
DLDSC	  1492#
DLDTR	  1503#	  5941	  6224	  8237
DLERR	  1508#
DLFE	  1510#
DLMAIN	  1519#
DLORE	  1509#
DLRA	  1496#
DLRBUF	  1486#
DLRCSR	  1485#
DLRD	  1498#	  5886
DLRDM	  1513#
DLRDPE	  1511#
DLRDS	  1512#
DLRE	  1504#
DLRI	  1493#	  5857
DLRIE	  1499#	  5877	  5907
DLRIV	  1482#	  1483
DLRTS	  1502#	  2058	  5928	  5941	  6219	  6224	  8234	  8237	  8858
DLSRD	  1497#
DLSTD	  1501#
DLTDM	  1525#
DLTDS	  1524#
DLTIE	  1518#	  5964
DLTIV	  1483#
DLTR	  1517#
DLXBUF	  1488#
DLXCSR	  1487#
DLYCNT	   723#
DON10C	   831#	 11294	 12718
DON10S	   830#
DON11C	   839#	 11318	 12718
DON11S	   838#
DPAD	   945#	  2953
DPADB	   949#	 13343
DPADX	   944#	  2961
DPAR	   937#	  2931
DPARX	   943#	  2939
DPBR	   938#	  2972
DPBRX	   942#	  2980
DPERG	   950#	  2992
DPFE	   951#	  3409
DPFE1	   952#
DPFM	   940#	  2918
DPFMA	   941#	  2909
DPMQ	   939#	  2898
DPOS	   380#	  4405	  8557
DPOST	   381#	  5052	  5269	 11499
DPOSVR	   382#	  5148	  5158	 10323	 10960
DPOSVT	   383#	  4142	  4149	  4215	  4616	  4809	  4854	  4862	  4939	  4991
	  5167	  5251	  5331
DPPC	   946#	 13337
DPSC	   953#	  3416
DPSC1	   954#
DPVMA	   947#	 13341
DPVMHD	   948#	 13335
DRAMAB	   891#	 13089
DRAMAD	   410#	 13062	 13076
DRESET	   801#	 12715
DRJ1.4	   893#	 13106
DRJ710	   892#	 13080
DRLTCH	   918#	 13077
DS00	   771#
DS01	   772#
DS02	   773#
DS03	   774#
DS04	   775#
DS05	   776#
DS06	   777#
DSEND	   783#	 12632	 12647
DSKDIR	   129#
DSVER	 10961
DTAFIL	   308#	 10396	 10519
DTAFL1	 10476
DTBASE	   318#
DTBLK	 10658	 10681	 10699	 10746	 13649#
DTCOPY	   126#
DTE	  4270#
DTE10D	 11274
DTE11D	 11278
DTEADR	   712#	 12404
DTEASB	    49#	   708
DTEBAS	   389#
DTEBBD	  1073
DTEBCT	 11482	 11484	 13575#
DTEBSY	 11295	 11480	 11496	 13574#
DTEDEF	    50#	   717
DTEINI	  6283
DTEINT	 11610
DTEIV0	   746#
DTEIV1	   747#
DTEIV2	   748#
DTEIV3	   749#
DTEMAX	   714#
DTER	 10722
DTERA	 10752
DTERC	 10775	 10785
DTESIZ	   713#
DTESZS	   715#
DTEXT	 10432	 10447	 10483	 13627#
DTEXTS	 10448	 10462	 10493	 13628#
DTFIL	 10381
DTHDER	 10756
DTINIT	   312#	 10421
DTLNGT	 10435	 10497	 13629#
DTRDFL	   316#	 10426	 10548
DTREAD	   319#	 10662
DTREV	 10732	 10739	 10754
DTRPLD	 10398
DTSRE	 10727
DTSRF	 10726
DTSTRT	 10434	 10469	 13630#
DTUNIT	  5550	 10693	 10718	 13547#
DTWRT	   320#	 10674
DTWTFL	   317#
DTXCMD	 10690	 10745	 13646#
DUPE	   824#
DURE	   825#
DVADR	  9760	  9782	 10529	 10530	 10550	 13631#
DVASB	  1407
DVBUF	 10469	 10586	 10653	 10658	 10659	 10671	 10678	 13619#	 13620
DVCNT	  9759	  9781	 10523	 10531	 10551	 13632#
DVDATA	   315#	  9746	  9765	 10051	 10526
DVDIRF	  2054	 10451	 10514	 13633#
DVEOF	  9748	  9767	 10527
DVFRAM	   330#	 10053	 10056	 10065	 10113	 10576	 10578
DVLOAD	  5534
DVSASB	    51#
DVWRD	   331#	 10058	 10062	 10111
DXWRD1	   853#
EBSEL	   857#
EBUSPC	   841#	  8371
EBUSPS	   843#
ECLOK	   375#	  3664	  3773	  3781
EDONES	   800#
EMTIMO	  8395
EMTVEC	   601#	  6204	  6215
EN0BSZ	  1838#	 11160	 11205	 11523	 11525	 11531
EN0BUF	 11164	 11204	 11219	 11522	 11524	 13583#
EN0DLY	 11119	 11628	 13587#
EN0ER1	 11087	 13577#
EN0ER2	 11150	 13580#
EN0IND	 11140	 11146	 11198	 11636	 13584#
EN0MEM	 11175	 13581#
EN0PER	 11090	 13578#
EN0PKI	 11153	 13579#
EN0PKO	 11073	 13576#
EN0TRY	 11088	 11107	 11118	 13582#
ENBCCF	 11167	 11391	 11392	 11639	 13585#
ENETQ	 11074	 11076	 11078	 11108	 11368	 11541	 13589#
ENIADR	  1836#	 11622
ENICOP	 11179
ENICSR	  1835#	 11142	 11206
ENIHAD	 11382	 11622	 11623	 13593#
ENIINT	 11618
ENIOJA	   899#	 12695
ENISET	 11145	 11638
ENIWA	  1834#	 11204
ENIWC	  1833#	 11143	 11205
ENOCSR	  1830#	 11071	 11098	 11120	 11124
ENODLY	  1831#	 11119
ENOINT	 11616	 11620
ENOWA	  1829#	 11117
ENOWC	  1828#	  1829	  1830	  1831	  1833	  1834	  1835	  1836	 11115
EOP	   301#	  4934
EOPSET	   303#
EPTREL	    60#	  2001	  4615	  4620	  4635	  4676	  4713	  4808	  4853	  4861
	  4938	  4990	  5018	  5051	  5067	  5084	  5134	  5166	  5250	  5268
	  5330	  5342	  8373	  8556	  8559	  8574	 11498	 13756
ERR10C	   833#	 11294	 12718
ERR10S	   832#
ERR11C	   845#	 11318	 12718
ERR11S	   844#
ERREOP	   302#	  4932
ERRHLT	   217#
ERRSTP	   797#	  4422	  4565
ERRVEC	   594#	  6197	  6245	  6248
ERSTOP	   202#	  6403
ESYNC	   376#
ETB	   699#
EXAM	   378#	  4509	  5092	  5103	  8561	 10361
EXAMT	   379#	  4138	  4677	  5019	  5085	  5135
EXCT	   371#	  3614	  3685	  3755	  4147	  4228	  4240	  8388	  8639	  8788
EXTBF	  9574	  9575	  9580	  9694	 10461	 13620#
EXVIRT	   757#	  5091	  5102	  5147	  5157
FATAL	   216#	  6333	  6866	  6869	  8299	  8304	 11112	 11729	 11795
FESCP	  3410
FF	   675#
FFDEP	 12633	 12634
FLOPPY	  5543	 10392	 10422	 10515	 10544	 13543#
FLST	 13014	 13042
FR10Q	 11319	 11321	 11445	 11535	 13590#
FREEAD	 11509#	 11511	 11520	 11689	 11776
FREEND	 11511#	 11693	 11779
FREEQ	 11402	 11411	 11519	 13591#
FREESZ	 11510#	 11511	 11530
FSCASB	 11543	 11706	 11714	 11723	 11725	 11773	 11781	 13756
FSCLKA	  5919	  5948	  6032	  8838	  8849	  8850	 13603#
FSCLKR	  5862	  5936	  5953
FSFLG	  5920	  5931	  7392	  7416	  7439	  8233	 13602#
FSHNG1	  5935
FSIN4D	  5891	  5893
FSIN4E	  5917
FSIN4R	  5895
FSIN4W	  5911	  5915
FSIN5A	  5945	  5947
FSINT1	  5854
FSINT2	  5859
FSINT3	  5871
FSINT4	  5875
FSINT5	  5918
FSLOSM	  5923
FSMSG	  5872
FSRBUF	  5874	  5896	  5902	  5909	  5912	 13600#
FSRINT	  6220
FSRLEN	  5847#	  5896	 13600
FSRPTR	  5874	  5896	  5898	  5899	  5902	  5904	  5908	  5916	 13601#
FSRTIM	  6027	  8840	  8843	  8846	 13604#
FSSTAT	  5853	  5859	  5871	  5875	  5918	  5930	 13597#
FSTINT	  6221
FSTPTR	  5960	  5969	 13598#
FSTYP	  5873	  5924
FSTYP1	  5961
FSTYP2	  5967
FSTYPR	  5966	  5975	 13599#
FSXIT	  5858	  5868	  5870	  5878	  5881	  5887	  5897	  5900
FSXITA	  5903	  5905	  5921	  5926	  5949	  5954	  5959	  5972
HALTLP	   795#	  3777	  3787	  8737	  8776	 13246
HANGU1	  2060	  5861	  5925	  5952	  6089	  8860
HANGUP	  5882	  5885	  5971
HLPPNT	  2007	  2722	  6492	 11921	 11929	 13660#
HRLZI	  4268#
HRRI	  4267#
I	  3695#	  3719	  3720#	  3744	  4170#	  4196	  4273#	  4307	  4308#	  4340
	  4341#	  4365	  4366#	  4390	  8487#	  8519	  8656#	  8690	  8691#	  8723
	 12448#	 12452
IFILEF	  2006	  2069	  5521	  5601	  9558	 11917	 11940	 11954	 13724#
IFILEP	 11919
IFILIN	  2071
IFILX	  2759#	  2778
IFILX1	  2754	  2781
IFINP	  2740	  2744	  2752	  2756	  5515	  5518	  5522	 11953	 12355	 12359
	 13725#
IJFILX	  2743	  2755	  2776
INHCSH	   210#
INHPAG	   207#
INT10	   764#	 11452
INT10S	   837#	  4627	  5071
INT11C	   835#	 11282	 12718
INT11S	   834#
INTROF	   842#
INTRON	   840#	 11613	 12718
INTSON	   863#
INTSW	 10706	 10723	 10744	 10751	 13641#
IOTVEC	   599#
IRLOAD	   917#	 12595
JFILEF	  2021	  2072	  2148	  2757	  2780	  5513	  5591	  9552	 11945	 11947
	 11949	 13726#
JFILIN	  2074
JFINP	  2771	  2777	 11950	 13727#
JRST	  4269#	 12452
KASET	  4446	  4945
KASIM	  4625	  4948	  4951	 12710	 13710#
KLCLKR	  4731	 12530	 12540	 12542	 12569	 12585	 12725	 12883	 13192	 13751#
KLDCP	    48#	 13421
KLRUN	   796#	  4561	  8381	  8420
KONSL	  2149
KTIMBS	  5116	  5128	  8814	  8853	 13567#
KWASB	    52#	  1449
KWLIV	  1453#	  8811
KWLKE	  1457#
KWLKS	  1455#	  2064	  8824	  8825	  8827	  8828	  8833
L10ADR	  8331	  8520	  8525	  8620	 10284	 10345	 10371	 10876	 10951	 13704#
LBC	 10059	 10060	 10066	 13644#
LCRAM1	   902#	 12802	 13011	 13030
LCRAM2	   903#	 12803	 13029
LCRAM3	   904#	 12804	 13028
LCRAM4	   905#	 12805	 13027
LCRAM5	   906#	 12852	 13026
LCRDAL	   907#	 12781
LCRDAR	   908#	 12788
LD10ER	 10303	 10339	 10340	 10362
LD10V	 10322
LD10VE	 10341#	 10367
LD10VR	 10324
LD11DN	 10117
LDADR	  9970	 10045	 10125	 10208	 10221	 10248	 10287	 10879	 10910	 13652#
LDAR	   922#	 13156	 13258
LDATA	  9969	 10126	 10206	 10223	 10297	 10316	 10885	 10909	 13651#
LDATAE	 13650#
LDBDAT	 10881
LDBIN	  9744
LDBIN1	 10055	 10069
LDBIN2	 10084	 10089
LDBIN3	 10067
LDBINE	 10115
LDBLD2	 10920
LDBOOT	  9882
LDBRL	   878#	 12688	 13208	 13224
LDBRR	   877#	 12687	 13205	 13220
LDBXFR	 10908
LDCHAN	   927#	 12692
LDCHK1	   881#	  3575	 12690
LDCHK2	   882#	  3569	 12691
LDCLR	  9856
LDCNT	  9832	  9863	  9967	 10123	 10219	 10286	 10298	 10314	 10878	 10886
	 10907	 13653#
LDCNTL	  5293	  5507	  5527	  9576	  9742	  9787	  9793	  9800	  9802	  9872
	 10211	 10250	 10566	 13655#
LDCNV	  9849
LDCRAM	  9879
LDCZRO	  9878
LDDIS	   880#	 12689
LDDONE	 10048	 10152	 10338	 10924
LDDRAM	  9880
LDELVN	  9877
LDEOL	  9838
LDLTR	  9798
LDMBXA	   926#	 12697
LDOCT	  9828
LDOCTF	  9791	  9841	  9855	  9861	 10225	 13654#
LDOVRD	  5491	  5494	  5496	  5498	  5500	  5502	  5505	  5525	  9564	  9593
	  9610	  9612	 13656#
LDPRO1	  9797
LDPRO2	  9803	  9805	  9830
LDPRO3	  9799	  9807
LDPROC	  9788	 11932
LDRAM1	   886#	 13170
LDRAM2	   887#	 13167
LDRAM3	   888#	 13162
LDRDIN	 10290
LDRJEV	   889#	 13171
LDRJOD	   890#	 13168
LDSEL	   879#	  3851	 12724
LDSTRT	  5584
LDTEN	  9876
LDTYPE	  9874
LDZBLK	  9792	  9806	 10289	 10880	 13657#
LF	   673#	  2037	  2735	  6504	  6550	  6613	  7290	  7338
LJMP	 10061
LLD1	  9743
LLD2	  9747	  9810	  9823	  9979	 10247	 10905	 11899
LLD3	  9766
LLD4	  9773	  9780
LLDONE	  9779
LLIST	 12694	 12727
LLISTL	 12694#	 12726
LODAR	   372#	  3765	  3797	  8726
LOOPER	   200#
LPASB	  1769	  1869	  2371	  2559	  5696	  6715
LPTASB	  6561	  8086
LPTFLG	  6593	  6831	  6833	  7314	  7316	  8229	 13544#
LPTYPE	 13545#
LTMP	 10577	 10580	 10581	 13643#
MCNVER	    14#
MEMPE	  6246
MEMPEF	  8297	  8300	 13729#
MICFIL	   360#
MICNUL	   359#	 10210
MMADDM	  1468#
MMADDS	  1469#
MMDAT	  4453	  4454	  4455	  4472	 13740#
MMERRF	  1466#	  8302
MMLPBA	  1463#	  6247	  8301	  8302
MMLPEA	  1464#
MMLPIV	  1461#	  6246
MMPIE	  1472#	  6247	  8301
MMWWP	  1471#
MODDVC	   208#
MONASB	   341	  1891	  2115	  2134	  2384	  2418	  2437	  2570	  2586	  2603
	  2715	  5529	  5535	  5617	  5619	  5681	  8018	  8162	  9751	  9956
	  9962	 10386	 11881	 11895	 11900	 11923	 11934	 11958	 11992	 12007
	 12350	 13660	 13675
MONCTL	  6317	 13606#
MONMOD	  4581	  4655	  4658	  4662	  4671	  4955	  6298	 12708	 13707#
MRESET	   362#	  2998	  8630	  9179	  9227	 10203	 10956	 12773
MSWCHR	   669#	  4607	  4900	  7382
MTTYC	  4702
MTTYCF	  4703
MTTYER	  4619	  4623	  4638
MTTYI0	  4902
MTTYI1	  4608
MTTYIN	  4585
MTTYO	  4701
MTTYOC	  4591
MTTYOF	  4587	  4639	  4649	  4668	  4957	  6304	 12709	 13708#
MTTYP	  4656
MTTYS	  4704
MTTYX	  4659
MULTPY	   296#
NAMBF	  9668	  9675	 10454	 10482	 13621#
NAMEXT	   307#	  5290	  9549
NAMRAD	 13639#
NBIT	   574#	  2726	  7137	  8476	  8575
NEG36	  7603	  7627	  7638
NOPAR	  6245
NOPNT	   196#	  6597
NULL	   703#	  6554	  6698
NULSTP	   858#
NUPE	   826#
OPRSEL	   211#
P10CMD	  4918
PAG	  3709#	  3734#	  4184#	  4196	  4287#	  4322#	  4355#	  4365	  4380#	  4390
	  8501#	  8670#	  8705#
PAGDFL	  4095	  4144	  4217	 12423	 13552#
PALERS	   203#
PATEND	 13491#	 13761	 13766
PBELL	   276#
PC	   589#	  2011	  2047	  2060	  2707	  2737	  2743	  2755	  2776	  2790
	  2891	  3044	  3088	  3097	  3102	  3141	  3446	  3447	  3448	  3454
	  3469	  3507	  3509	  3510	  3511	  3512	  3513	  3516	  3517	  3518
	  3519	  3520	  3523	  3524	  3525	  3526	  3529	  3530	  3531	  3551
	  4062	  4067	  4072	  4077	  4087	  4234	  4243	  4404	  4425	  4446
	  4466	  4508	  4569	  4571	  4584	  4590	  4600	  4647	  4771	  4776
	  4777	  4778	  4782	  4785	  4945	  4960	  5050	  5073	  5165	  5213
	  5287	  5308	  5322	  5328	  5599	  5862	  5873	  5924	  5925	  5936
	  5939	  5942	  5953	  6034	  6089	  6167	  6190	  6214	  6283	  6309
	  6319	  6327	  6623	  6624	  6631	  6655	  6659	  6662	  6665	  6666
	  6695	  6696	  6699	  6707	  6712	  6801	  6820	  6821	  6827	  6837
	  6873	  6891	  6898	  6902	  6905	  6913	  6921	  6927	  6936	  6955
	  6972	  6985	  7095	  7148	  7184	  7196	  7205	  7210	  7216	  7380
	  7403	  7425	  7428	  7445	  7454	  7498	  7502	  7543	  7548	  7592
	  7603	  7607	  7611	  7627	  7638	  7657	  7670	  7676	  8223	  8264
	  8341	  8344	  8360	  8367	  8526	  8553	  8626	  8773	  8830	  8851
	  8860	  8910	  8915	  8931	  8964	  8974	  8999	  9044	  9070	  9096
	  9099	  9139	  9142	  9192	  9198	 10613	 10709	 11064	 11081	 11083
	 11085	 11094	 11096	 11100	 11122	 11126	 11133	 11145	 11173	 11179
	 11201	 11208	 11223	 11265	 11274	 11278	 11284	 11304	 11306	 11330
	 11332	 11355	 11357	 11364	 11371	 11373	 11377	 11380	 11388	 11398
	 11404	 11406	 11413	 11419	 11426	 11442	 11455	 11505	 11507	 11551
	 11605	 11626	 11638	 11643	 11727	 11789	 11793	 11816	 11824	 11835
	 11840	 11851	 11856	 12430	 12469	 12484	 12583	 12596	 12618	 12729
	 12739	 12744	 12746	 12749	 12771	 12780	 12787	 12799	 12836	 12878
	 12887	 12891	 12904	 12917	 12992	 13015	 13078	 13134	 13203	 13211
	 13216	 13227	 13241	 13245	 13253	 13319	 13328
PCF	  3088	  3097
PCFTBL	  3107
PCKASB	 11155	 11180	 11192	 11225
PCMDE	  2068
PCMDE1	  2146
PCMDE2	  6814
PCMDE3	  2727
PCMDFL	  2008	  2066	  2127	  2144	  2700	  2713	  2720	  5519	  6810	  7924
	  7930	 13609#
PCMDNF	  2696	  2698	  2714	  2721	  6558	  9812	  9815	  9822	 13610#
PCOMMA	   263#
PCRLF	   260#	  2141	  2868	  2889	  3451	  3514	  3521	  3527	  3533	  3833
	  3980	  4079	  4137	  4521	  4526	  4783	  4887	  5413	  5420	  6432
	  6443	  6459	  7274	  7292	  7306	  8262	  8412	  8458	  8599	  8929
	  9013	  9033	  9183	  9282	  9998	 10036	 10108	 10268	 10274	 10357
	 10500	 11351	 11942	 11991
PCVMAP	  3035	  3059	  3069	  3077
PDVER	   118#
PEBITS	  3560	  3872	  3956	  3986	  6165	 10937	 10939	 13551#
PERCLR	   836#	 12718
PFORCE	   274#	  2009	  2076	  2140	  4732	  4767	  4884	  4892	  6244	  6433
	  7207
PGOADR	  5593	  5612	 10046	 10334	 10966	 13562#
PGOCTL	  5583	 10047	 10337	 10969	 13563#
PHYS	   754#	  2001	  8377
PI	  3708#	  3733#	  4183#	  4286#	  4321#	  4340	  4354#	  4379#	  8500#	  8669#
	  8704#	  8723
PID	   117#
PLDBUF	   283#	  4794	  6499	  6503	  6505	  6523	  7244	  7852	  7855	  9819
PLPT	   282#
PMVER	   119#
PNORML	   275#	  2681	  3769	  4503	  5391	  5490	  5528	 10504
PNT18	   268#
PNT22	   270#
PNT23	   269#
PNT36	   271#	  2882	  4518	  4886	  8593	  8598	  9060	 10351	 10356
PNT36B	   272#	  2863
PNTADR	   273#	  3040	  4514	  8411	  8457	  8588	 10346	 10372
PNTAL	   254#	  3137	  7845	 11928
PNTBAK	   285#	  4515
PNTCHR	   257#	  7044	  7067	 10496
PNTCI	   258#	  2077	  2121	  2906	  2916	  3135	  4123	  6436	  6448	  7071
	  7310	  7324	  7329
PNTCPU	   416#	  3498	  3779	  3785	  4763
PNTCRM	   418#	  8957	 10267	 10273
PNTDEC	   267#	  8261	 10498	 11990
PNTDRM	   420#	  9234	 10158	 10164
PNTLPT	   198#
PNTNBR	   259#	  3832	  4086	  4122	  4136	  6439	  6954	  6962	  6966	  6969
	  7028	  7050	  9260	  9266	  9273
PNTOCS	   266#	  2850	  5410	  9010	  9130	 10028	 10035	 10100	 10107
PNTOCT	   265#	  5398	  5405	  6431	  6442	  6455	  6458	  8937	  8940	  8943
	  8946	  8949	  9987	  9992	  9997	 10022	 10095	 11350	 12493	 12499
PNTODC	   277#	  8997
PNTODT	   278#	  2914	  3437	  3467	  3958	  4057	  8952	  9003	  9067	  9252
	  9279
PNTRST	   287#	  6567	  9822
PR0	   656#
PR1	   657#
PR2	   658#
PR3	   659#	   665
PR4	   660#
PR5	   661#
PR6	   662#
PR7	   663#	  5110	  5123	  6185	 11432	 11464	 11477	 11607
PRGCMD	   422#	  5277
PRGHLT	   218#
PRGNPT	   424#
PRGRUN	  2129	  2768	  3547	  3586	  4666	  5514	  5603	  6302	 13728#
PRGSRT	    78#	    82	  1854	  5365	 10077
PRINTT	   280#	  4897	  6510	  6564	  7192
PROL36	   294#	  5227	  6876	  6895	  6900	  6908	  6935	  6984
PRTOFF	   759#	  2001	  4615	  4620	  4635	  4676	  4713	  4808	  4853	  4861
	  4938	  4990	  5018	  5051	  5067	  5084	  5091	  5102	  5134	  5147
	  5157	  5166	  5250	  5268	  5330	  5342	  8377	 11498
PS	   610#	  1991	  5110	  5115	  5123	  5128	  6170	  6485	  8220	 11432
	 11455	 11464	 11477	 11497	 11504	 11607	 11608	 11642
PSLASH	   262#	  2851	  4516	  5399	  6440	  6456	  9069	  9254
PSPACE	   261#	  3439	  6943	  6970	  7034	  7145	  9005	  9045	  9061	  9255
	  9261	  9267	  9274	 10030	 10102	 10490
PTAB	   264#
PTABLE	   123#
PTTY	   281#	  6612	  6614	  6620	  6856	  7252	  7256	  7268	  7279	  7320
PULSE	   779#
PWLEN	  5910	  6081#
PWORD	  5913	  6081
PWRVEC	   600#	  6199	  8214	  8227
QCHN	 11044#	 11415
QDTMSG	 11057#
QECHRQ	 11054#
QECHRY	 11053#	 11359
QENADR	 11056#	 11383
QENBCC	 11058#
QENMSG	 11048#	 11116	 11171	 11215	 11218
QENPKT	 11055#	 11214
QENWC	 11047#	 11110	 11217
QGET	 11173	 11380	 11442
QGIVE	 11081	 11304	 11355	 11377
QHDRSZ	 11050#	 11378	 11382	 11392	 11393	 11439	 11446	 11448	 11486	 11492
QINI	 11626
QMPCMD	  4705
QMPCXT	 11434	 11443	 11466
QMPINI	  6309
QMPRQS	 11440	 11444	 11465	 13592#
QMPRTY	 11505
QMPRY1	 11467
QNOPMS	 11052#
QREQ	 11046#	 11214	 11326	 11345	 11359	 11383
QSIZ	 11045#	 11400	 11416	 11485
R0	   581#	  1993	  1994	  1996	  2013	  2016	  2029	  2031	  2033	  2035
	  2037	  2039	  2041	  2091	  2093	  2095	  2099	  2101	  2103	  2105
	  2109	  2112	  2701	  2703	  2705	  2706	  2731	  2783	  2784	  2786
	  2789	  2797	  2807	  2809	  2811	  2813	  2815	  2837	  2840	  2845
	  2849	  2852	  2854	  2856	  2862	  2881	  2898	  2910	  2913	  2918
	  2924	  2931	  2939	  2944	  2946	  2953	  2961	  2965	  2972	  2980
	  2985	  2992	  3005	  3010	  3028	  3035	  3048	  3050	  3109	  3130
	  3418	  3425	  3426	  3429	  3432	  3433	  3462	  3466	  3476	  3479
	  3494	  3594	  3613	  3627	  3635	  3661	  3681	  3691	  3760	  3792
	  3822	  3828	  3830	  3831	  3837	  3843	  3860	  3864	  3957	  3984
	  3986	  3997	  4003	  4005	  4007	  4008	  4015	  4018	  4020	  4022
	  4024	  4032	  4046	  4048	  4056	  4085	  4098	  4101	  4104	  4111
	  4116	  4119	  4126	  4129	  4133	  4146	  4156	  4160	  4206	  4207
	  4209	  4226	  4228	  4231	  4236	  4239	  4247	  4249	  4255	  4257
	  4260	  4262	  4398	  4399	  4463	  4475	  4495	  4496	  4500	  4505
	  4507	  4513	  4517	  4606	  4607	  4614	  4644	  4645	  4646	  4671
	  4804	  4807	  4822	  4827	  4876	  4877	  4885	  4900	  5010	  5011
	  5012	  5013	  5041	  5044	  5067	  5073	  5089	  5090	  5094	  5096
	  5097	  5098	  5099	  5100	  5101	  5105	  5106	  5107	  5111	  5112
	  5113	  5121	  5124	  5125	  5126	  5143	  5144	  5145	  5146	  5156
	  5177	  5182	  5185	  5193	  5197	  5201	  5207	  5208	  5213	  5268
	  5273	  5276	  5285	  5286	  5300	  5304	  5319	  5323	  5358	  5361
	  5363	  5365	  5367	  5383	  5384	  5388	  5393	  5396	  5404	  5408
	  5409	  5438	  5443	  5459	  5462	  5474	  5477	  5481	  5547	  5549
	  5550	  5583	  5584	  5604	  5605	  5611	  5613	  5614	  5788	  5796
	  5799	  5851	  5852	  5857	  5860	  5865	  5867	  5869	  5880	  5884
	  5886	  5908	  5909	  5910	  5912	  5914	  5916	  5933	  5934	  5939
	  5944	  5946	  5951	  5957	  5966	  5968	  5981	  5989	  5992	  5995
	  5998	  6001	  6004	  6018	  6022	  6028	  6160	  6161	  6168	  6183
	  6184	  6185	  6186	  6191	  6222	  6223	  6232	  6233	  6234	  6260
	  6261	  6262	  6263	  6315	  6316	  6317	  6323	  6324	  6396	  6402
	  6403	  6406	  6417	  6418	  6419	  6420	  6421	  6422	  6429	  6430
	  6438	  6441	  6454	  6457	  6489	  6490	  6494	  6496	  6498	  6506
	  6517	  6518	  6522	  6527	  6530	  6533	  6536	  6541	  6543	  6544
	  6545	  6547	  6567	  6569	  6583	  6584	  6585	  6590	  6597	  6602
	  6611	  6613	  6618	  6643	  6653	  6657	  6664	  6675	  6683	  6709
	  6855	  6872	  6950	  6951	  6958	  6961	  6963	  6965	  6967	  6968
	  6977	  7002	  7006	  7012	  7019	  7020	  7022	  7039	  7041	  7043
	  7046	  7047	  7048	  7053	  7056	  7059	  7066	  7077	  7080	  7083
	  7094	  7097	  7109	  7111	  7113	  7123	  7133	  7135	  7158	  7160
	  7165	  7251	  7255	  7267	  7278	  7319	  7458	  7460	  7469	  7470
	  7473	  7478	  7481	  7491	  7493	  7505	  7507	  7510	  7511	  7513
	  7525	  7531	  7556	  7558	  7566	  7571	  7573	  7584	  7586	  7589
	  7594	  7616	  7618	  7641	  7643	  7672	  7673	  7674	  7675	  7680
	  7681	  7683	  7687	  7702	  7709	  7711	  7713	  7716	  7730	  7732
	  7734	  7736	  7738	  7740	  7744	  7746	  7748	  7764	  7768	  7774
	  7776	  7795	  7802	  7819	  7825	  7832	  7844	  7871	  7882	  7892
	  7896	  7902	  7908	  7914	  7915	  7934	  7948	  7950	  7951	  7952
	  7953	  7956	  7957	  8211	  8235	  8236	  8260	  8314	  8334	  8346
	  8347	  8348	  8349	  8350	  8351	  8366	  8368	  8384	  8387	  8393
	  8405	  8408	  8410	  8415	  8423	  8427	  8454	  8456	  8464	  8468
	  8469	  8470	  8471	  8472	  8474	  8556	  8560	  8563	  8570	  8588
	  8593	  8597	  8607	  8614	  8624	  8630	  8631	  8637	  8639	  8642
	  8647	  8651	  8652	  8768	  8787	  8801	  8805	  8811	  8812	  8813
	  8815	  8816	  8817	  8818	  8819	  8820	  8821	  8822	  8830	  8849
	  8851	  8853	  8901	  8915	  8916	  8917	  8918	  8919	  8920	  8922
	  8926	  8936	  8939	  8942	  8945	  8948	  8951	  8955	  8967	  8977
	  8993	  9002	  9006	  9009	  9023	  9025	  9027	  9029	  9037	  9038
	  9059	  9066	  9079	  9082	  9084	  9091	  9093	  9097	  9100	  9103
	  9107	  9110	  9118	  9119	  9120	  9127	  9128	  9140	  9143	  9147
	  9151	  9154	  9157	  9158	  9159	  9171	  9174	  9176	  9191	  9197
	  9209	  9211	  9212	  9217	  9222	  9225	  9231	  9232	  9239	  9244
	  9247	  9251	  9257	  9263	  9269	  9272	  9276	  9277	  9278	  9298
	  9301	  9303	  9316	  9322	  9323	  9324	  9550	  9612	  9613	  9614
	  9668	  9671	  9681	  9683	  9685	  9687	  9691	  9698	  9700	  9702
	  9706	  9716	  9769	  9771	  9772	  9774	  9778	  9795	  9796	  9798
	  9804	  9813	  9826	  9827	  9829	  9834	  9835	  9837	  9839	  9844
	  9845	  9852	  9864	  9865	  9868	  9872	  9874	  9967	  9977	  9984
	  9986	  9991	  9996	 10000	 10009	 10016	 10021	 10026	 10027	 10033
	 10034	 10038	 10045	 10046	 10054	 10059	 10063	 10083	 10086	 10091
	 10094	 10100	 10105	 10106	 10113	 10117	 10128	 10135	 10137	 10138
	 10139	 10141	 10142	 10144	 10156	 10162	 10208	 10227	 10233	 10238
	 10248	 10255	 10257	 10258	 10260	 10265	 10271	 10301	 10319	 10343
	 10345	 10350	 10356	 10360	 10363	 10364	 10371	 10428	 10430	 10431
	 10432	 10433	 10434	 10435	 10436	 10438	 10456	 10459	 10463	 10466
	 10469	 10474	 10495	 10497	 10529	 10532	 10533	 10550	 10551	 10577
	 10579	 10580	 10581	 10604	 10612	 10613	 10614	 10617	 10618	 10619
	 10620	 10621	 10622	 10623	 10650	 10665	 10681	 10685	 10688	 10690
	 10696	 10703	 10718	 10719	 10745	 10748	 10777	 10778	 10801	 10806
	 10807	 10809	 10811	 10813	 10814	 10818	 10821	 10828	 10831	 10907
	 10918	 10959	 11074	 11076	 11108	 11110	 11116	 11117	 11164	 11165
	 11214	 11217	 11218	 11220	 11296	 11300	 11319	 11326	 11345	 11350
	 11353	 11359	 11382	 11383	 11392	 11393	 11400	 11401	 11402	 11411
	 11415	 11416	 11445	 11446	 11447	 11478	 11485	 11492	 11493	 11519
	 11527	 11528	 11560	 11561	 11562	 11564	 11588	 11591	 11592	 11595
	 11596	 11628	 11631	 11695	 11699	 11715	 11716	 11717	 11720	 11721
	 11722	 11754	 11758	 11771	 11774	 11775	 11813	 11818	 11848	 11853
	 11922	 11989	 12349	 12356	 12404	 12408	 12409	 12410	 12416	 12418
	 12419	 12420	 12422	 12424	 12425	 12426	 12428	 12454	 12466	 12470
	 12471	 12472	 12473	 12492	 12497	 12498	 12509	 12524	 12536	 12538
	 12543	 12544	 12545	 12546	 12561	 12562	 12563	 12564	 12645	 12646
	 12647	 12648	 12650	 12663	 12664	 12665	 12666	 12667	 12668	 12670
	 12677	 12703	 12728	 12748	 12751	 12759	 12762	 12767	 12769	 12774
	 12780	 12781	 12784	 12785	 12786	 12788	 12794	 12795	 12796	 12797
	 12823	 12829	 12837	 12855	 12862	 12866	 12874	 12875	 12877	 12883
	 12891	 12899	 12909	 12912	 12913	 12914	 12915	 12918	 12919	 12923
	 12924	 12933	 12940	 12943	 12955	 12957	 12959	 12961	 12962	 12963
	 12964	 12965	 12975	 12977	 12983	 12990	 13004	 13011	 13014	 13020
	 13035	 13042	 13048	 13055	 13056	 13060	 13075	 13081	 13082	 13083
	 13084	 13085	 13090	 13091	 13092	 13093	 13094	 13102	 13107	 13108
	 13109	 13110	 13111	 13112	 13119	 13156	 13162	 13168	 13171	 13178
	 13187	 13194	 13196	 13197	 13199	 13205	 13208	 13220	 13224	 13239
	 13242	 13258	 13268	 13269	 13270	 13271	 13308	 13310	 13313	 13316
	 13323	 13335	 13337	 13341	 13343	 13347	 13355	 13357	 13360	 13361
	 13362	 13363	 13364	 13365	 13366	 13367	 13368	 13369	 13370	 13373
	 13379	 13380	 13381	 13382	 13383	 13384	 13392
R1	   582#	  2110	  2112	  2117	  2729	  2731	  2733	  2734	  2735	  2736
	  2740	  2741	  2744	  2752	  2753	  2756	  2771	  2773	  2777	  2786
	  2813	  2858	  2862	  2876	  3005	  3113	  3118	  3120	  3122	  3124
	  3126	  3129	  3131	  3477	  3478	  3560	  3562	  3571	  3572	  3661
	  3663	  3666	  3667	  3775	  3783	  3956	  3957	  3960	  3964	  3968
	  3972	  3976	  4007	  4055	  4056	  4060	  4065	  4070	  4075	  4205
	  4206	  4207	  4208	  4209	  4225	  4232	  4235	  4403	  4412	  4455
	  4488	  4533	  4687	  4688	  4689	  4691	  4729	  4793	  4803	  4804
	  4805	  4819	  4822	  4824	  4830	  4831	  4832	  4837	  4838	  4840
	  4905	  4906	  4908	  4964	  4966	  4968	  5067	  5073	  5108	  5111
	  5112	  5113	  5120	  5124	  5125	  5126	  5130	  5131	  5132	  5139
	  5140	  5150	  5151	  5152	  5153	  5154	  5178	  5183	  5187	  5203
	  5206	  5212	  5225	  5283	  5284	  5321	  5327	  5383	  5395	  5396
	  5397	  5404	  5408	  5414	  5416	  5417	  5427	  5459	  5469	  5474
	  5477	  5612	  5613	  5614	  5852	  5853	  5855	  5861	  5864	  5872
	  5888	  5889	  5890	  5892	  5894	  5898	  5913	  5914	  5923	  5934
	  5935	  5938	  5952	  5958	  5960	  5966	  5969	  5981	  5982	  5988
	  5990	  5991	  5993	  5994	  5996	  5997	  5999	  6000	  6002	  6003
	  6005	  6019	  6020	  6023	  6024	  6029	  6159	  6162	  6180	  6190
	  6322	  6324	  6325	  6435	  6441	  6453	  6454	  6457	  6460	  6498
	  6502	  6504	  6522	  6542	  6543	  6550	  6552	  6554	  6605	  6607
	  6618	  6621	  6861	  6864	  6867	  6870	  6871	  6872	  6892	  6901
	  6950	  6976	  6987	  6988	  6989	  7001	  7008	  7029	  7038	  7069
	  7142	  7186	  7208	  7220	  7221	  7222	  7227	  7236	  7238	  7240
	  7243	  7247	  7255	  7259	  7270	  7271	  7278	  7289	  7290	  7294
	  7300	  7319	  7519	  7525	  7527	  7590	  7605	  7629	  7630	  7631
	  7632	  7633	  7655	  7661	  7662	  7663	  7664	  7665	  7666	  7667
	  7668	  7669	  7680	  7689	  7693	  7699	  7767	  7768	  7770	  7824
	  7826	  7831	  7833	  7851	  7853	  7859	  7860	  7871	  7873	  7875
	  7892	  7915	  7948	  8288	  8289	  8293	  8317	  8318	  8319	  8325
	  8331	  8332	  8333	  8357	  8366	  8370	  8376	  8393	  8394	  8408
	  8414	  8454	  8460	  8465	  8521	  8522	  8523	  8525	  8560	  8565
	  8569	  8606	  8607	  8620	  8621	  8623	  8636	  8643	  8736	  8739
	  8775	  8778	  8791	  8796	  8956	  8968	  8996	  8998	  9056	  9059
	  9177	  9231	  9244	  9257	  9263	  9269	  9276	  9325	  9669	  9671
	  9676	  9689	  9695	  9704	  9714	  9793	  9798	  9817	  9832	  9848
	  9860	  9866	  9970	  9971	  9976	  9981	  9986	  9996	 10002	 10007
	 10008	 10016	 10021	 10033	 10039	 10129	 10139	 10142	 10144	 10157
	 10163	 10206	 10228	 10237	 10238	 10266	 10272	 10300	 10304	 10318
	 10360	 10363	 10429	 10438	 10469	 10474	 10608	 10629	 10697	 10715
	 10719	 10720	 10728	 10735	 10761	 10771	 10781	 10787	 10802	 10809
	 10811	 10813	 10884	 10887	 10890	 10892	 10893	 10900	 10902	 10909
	 10917	 10958	 11110	 11114	 11115	 11147	 11154	 11160	 11170	 11171
	 11215	 11216	 11217	 11221	 11378	 11400	 11416	 11437	 11438	 11439
	 11440	 11448	 11449	 11450	 11451	 11452	 11453	 11465	 11485	 11486
	 11488	 11489	 11490	 11491	 11494	 11520	 11522	 11523	 11524	 11525
	 11527	 11529	 11530	 11531	 11609	 11610	 11611	 11615	 11616	 11617
	 11618	 11619	 11620	 11621	 11629	 11633	 11685	 11687	 11691	 11705
	 11713	 11721	 11724	 11749	 11751	 11752	 11756	 11763	 11764	 11772
	 11775	 11778	 11786	 11812	 11819	 11847	 11854	 12355	 12356	 12358
	 12359	 12360	 12407	 12408	 12417	 12418	 12419	 12420	 12423	 12424
	 12425	 12426	 12482	 12492	 12509	 12555	 12581	 12620	 12623	 12624
	 12626	 12627	 12629	 12643	 12652	 12653	 12654	 12663	 12664	 12665
	 12666	 12667	 12668	 12676	 12726	 12730	 12752	 12753	 12758	 12767
	 12791	 12798	 12808	 12812	 12813	 12814	 12815	 12825	 12826	 12827
	 12828	 12838	 12883	 12884	 12886	 12891	 12911	 12913	 12914	 12915
	 12954	 12956	 12958	 12973	 12982	 12988	 12989	 12991	 12995	 12997
	 13003	 13006	 13034	 13037	 13062	 13064	 13066	 13068	 13075	 13085
	 13086	 13094	 13095	 13099	 13114	 13155	 13163	 13164	 13172	 13173
	 13175	 13177	 13180	 13181	 13193	 13204	 13207	 13219	 13223	 13257
	 13292	 13321	 13322	 13323	 13348	 13349	 13350	 13351	 13353	 13356
	 13359	 13361	 13362	 13363	 13364	 13365
R2	   583#	  2811	  2815	  2837	  2849	  2852	  2869	  2871	  3112	  3119
	  3121	  3123	  3125	  3128	  3131	  3559	  3562	  3571	  4059	  4064
	  4069	  4074	  4085	  4458	  4461	  4473	  5141	  5143	  5146	  5179
	  5184	  5189	  5191	  5200	  5205	  5211	  5315	  5324	  5376	  5384
	  5397	  5425	  5426	  5427	  5431	  5432	  5453	  5469	  5481	  5979
	  5981	  6013	  6016	  6018	  6021	  6025	  6026	  6030	  6034	  6434
	  6438	  6444	  6445	  6452	  6462	  6463	  6629	  6638	  6639	  6652
	  6656	  6668	  6672	  6673	  6675	  6677	  6678	  6679	  6680	  6681
	  6682	  6688	  6691	  6693	  6704	  6705	  6864	  6875	  6915	  6931
	  6938	  6975	  6976	  6977	  7002	  7013	  7016	  7017	  7018	  7019
	  7039	  7045	  7046	  7054	  7058	  7453	  7465	  7466	  7467	  7470
	  7478	  7501	  7511	  7520	  7522	  7696	  7699	  7701	  7710	  7714
	  7850	  7851	  7853	  7892	  7915	  7948	  8293	  8345	  8346	  8347
	  8348	  8349	  8350	  8351	  8352	  8354	  8355	  8356	  8606	  8609
	  8983	  8989	  8991	  9247	  9278	  9670	  9672	  9675	  9691	  9694
	  9706	  9833	  9844	  9845	  9848	  9852	  9860	  9863	  9865	  9866
	  9969	  9976	  9981	  9991	 10001	 10007	 10008	 10016	 10026	 10038
	 10123	 10148	 10219	 10244	 10298	 10305	 10314	 10330	 10614	 10615
	 10616	 10617	 10699	 10701	 10725	 10731	 10738	 10807	 10814	 10885
	 10887	 10890	 10892	 10901	 10903	 10910	 10911	 10912	 10914	 10915
	 10916	 10917	 10954	 10964	 11070	 11118	 11119	 11137	 11165	 11213
	 11219	 11220	 11293	 11317	 11322	 11326	 11327	 11328	 11330	 11391
	 11393	 11401	 11430	 11462	 11475	 11517	 11587	 11589	 11591	 11592
	 11595	 11596	 11599	 11607	 11608	 11611	 11617	 11619	 11621	 11630
	 11631	 11632	 11685	 11689	 11692	 11697	 11703	 11704	 11712	 11715
	 11718	 11720	 11722	 11724	 11763	 11764	 11765	 11767	 11768	 11811
	 11820	 11849	 11855	 12406	 12411	 12727	 12728	 12748	 12751	 12759
	 12808	 12813	 12814	 12815	 12822	 12845	 12883	 12885	 12888	 12891
	 12935	 12936	 12937	 12938	 12939	 12974	 12981	 12994	 12996	 13003
	 13021	 13034	 13049	 13055	 13119	 13120	 13121	 13126	 13127	 13128
	 13129	 13131	 13132	 13133	 13141	 13142	 13149	 13150	 13194	 13195
	 13217	 13218	 13219	 13291	 13325	 13347	 13374
R3	   584#	  2835	  2843	  2865	  3421	  3422	  3423	  3433	  4491	  4502
	  4519	  4548	  5180	  5197	  5199	  5200	  5204	  5205	  5206	  5208
	  5210	  5226	  5377	  5390	  5411	  5980	  6006	  6012	  6014	  6015
	  6017	  6020	  6027	  6028	  6029	  6030	  6033	  6630	  6632	  6634
	  6636	  6798	  6803	  6804	  6805	  6807	  6816	  6819	  6823	  6825
	  6829	  6834	  6875	  6894	  6899	  6907	  6933	  6959	  6961	  6965
	  6968	  6974	  6978	  6982	  6983	  6990	  7052	  7054	  7058	  7068
	  7463	  7475	  7486	  7509	  7514	  7695	  7703	  7892	  7915	  7948
	  8293	  8353	  8354	  8355	  8356	  8468	  8469	  8470	  8471	  8981
	  8983	  8984	  8985	  8986	  8987	  8988	  8990	  9576	  9577	  9601
	  9604	  9609	  9614	  9619	  9628	  9760	  9769	  9782	 10125	 10128
	 10135	 10146	 10156	 10162	 10221	 10222	 10227	 10233	 10242	 10265
	 10271	 10284	 10285	 10286	 10287	 10300	 10318	 10326	 10327	 10328
	 10335	 10336	 10454	 10457	 10461	 10464	 10607	 10698	 10703	 10709
	 10711	 10712	 10713	 10718	 10728	 10735	 10748	 10777	 10804	 10822
	 10876	 10877	 10878	 10879	 10882	 10883	 10886	 10888	 10912	 10915
	 10922	 10923	 10951	 10952	 10953	 10958	 10962	 11138	 11139	 11140
	 11141	 11146	 11164	 11199	 11204	 11219	 11270	 11271	 11275	 11279
	 11298	 11323	 11635	 11636	 11691	 11692	 11693	 11695	 11697	 11699
	 11703	 11710	 11712	 11713	 11754	 11756	 11758	 11763	 11767	 11768
	 11771	 11772	 11774	 11776	 11778	 11779	 11810	 11821	 11832	 11837
	 12857	 12860	 12868	 12876	 12906	 12919	 12923	 12924	 12928	 12929
	 12930	 12931	 12935	 12943	 12948	 12949	 13004	 13005	 13019	 13020
	 13035	 13036	 13047	 13048	 13064	 13066	 13068	 13116	 13117	 13198
	 13199	 13212	 13217	 13223	 13239	 13257
R4	   585#	  2845	  2869	  3108	  3133	  3138	  3409	  3416	  3418	  3425
	  4025	  4028	  4031	  4032	  4505	  4522	  5229	  5232	  5235	  5237
	  5240	  5393	  5414	  6916	  6928	  6945	  6958	  6963	  6967	  6972
	  6981	  6995	  7000	  7004	  7032	  7479	  7487	  7495	  7529	  7549
	  7682	  7686	  7692	  7706	  7892	  7915	  7948	  8266	  8267	  8268
	  8293	  8316	  8317	  8318	  8319	  8320	  8325	  8480	  8481	  8520
	  8521	  8522	  8523	  8524	  8935	  8951	  8978	  8981	  9249	  9283
	  9286	  9312	  9317	  9554	  9560	  9564	  9566	  9568	  9569	  9570
	  9571	  9572	  9573	  9574	  9579	  9581	  9582	  9597	  9599	  9607
	  9617	  9622	  9626	  9759	  9762	  9770	  9781	 10126	 10129	 10147
	 10157	 10223	 10228	 10237	 10243	 10255	 10256	 10257	 10258	 10259
	 10260	 10266	 10297	 10301	 10316	 10319	 10329	 10334	 10335	 10336
	 10350	 10364	 10455	 10457	 10462	 10464	 10605	 10606	 10610	 10611
	 10623	 10626	 10627	 10628	 10631	 10633	 10635	 10637	 10639	 10642
	 10643	 10644	 10645	 10646	 10647	 10693	 10702	 10742	 10803	 10805
	 10815	 10816	 10817	 10818	 10819	 10820	 10821	 10825	 10955	 10959
	 10963	 10966	 10967	 10968	 11704	 11705	 11710	 11716	 11717	 11718
	 11809	 11822	 11831	 11838	 12733	 12740	 12810	 12837	 12840	 12907
	 12909	 13010	 13014	 13016	 13040	 13042	 13044	 13117	 13118	 13130
	 13131	 13133	 13145	 13148	 13150	 13151	 13339	 13344	 13356
R5	   586#	  3006	  3107	  3109	  3126	  3130	  3622	  3627	  3631	  3990
	  3993	  4001	  4020	  4026	  4029	  4095	  4119	  4128	  4129	  4133
	  4204	  4211	  4252	  4394	  4398	  4399	  4400	  4403	  4414	  4415
	  4416	  4490	  4495	  4496	  4497	  4507	  4513	  4522	  4524	  4541
	  4542	  4544	  4545	  4546	  4549	  4644	  4686	  4687	  4793	  4830
	  4837	  4872	  4876	  4877	  4885	  4905	  4964	  5230	  5233	  5235
	  5238	  5240	  5371	  5374	  5395	  5401	  5417	  5426	  5432	  5438
	  5442	  5443	  5448	  5451	  5460	  5462	  5471	  5777	  5780	  5788
	  6922	  6952	  6980	  7003	  7011	  7024	  7026	  7040	  7061	  7064
	  7226	  7227	  7229	  7230	  7235	  7488	  7496	  7497	  7522	  7523
	  7579	  7609	  7610	  7650	  7652	  7653	  7654	  7892	  7915	  7948
	  8224	  8225	  8254	  8255	  8263	  8279	  8280	  8293	  8314	  8315
	  8336	  8343	  8369	  8416	  8477	  8479	  8619	  8623	  8624	  8748
	  8755	  8933	  8934	  8935	  8936	  8939	  8942	  8945	  8948	  8976
	  8978	  8996	  8998	  9001	  9002	  9006	  9024	  9026	  9028	  9030
	  9062	  9239	  9251	  9287	  9305	  9306	  9307	  9308	  9309	  9310
	  9311	  9316	  9555	  9561	  9572	  9575	  9580	  9581	  9582	  9583
	  9585	  9587	  9589	  9591	  9756	  9757	  9774	  9775	  9783	  9784
	  9794	  9795	  9817	  9826	  9834	 10014	 10040	 10042	 10063	 10077
	 10083	 10086	 10088	 10094	 10105	 10137	 10163	 10236	 10240	 10604
	 10605	 10607	 10801	 10802	 10803	 11182	 11269	 11361	 11367	 11385
	 11395	 11534	 11537	 11540	 11560	 11564	 11587	 11599	 11684	 11748
	 11814	 11823	 11833	 11839	 12622	 12623	 12624	 12625	 12626	 12627
	 12628	 12629	 12630	 12631	 12675	 12676	 12677	 12753	 12754	 12755
	 12756	 12775	 12776	 12777	 12798	 12859	 12863	 12978	 12979	 13065
	 13067	 13069	 13135	 13158	 13175	 13183	 13338	 13345	 13385
R50UPK	   310#	 10438	 10442	 10446
R6	   587#	  6484
RAMIS0	   851#
RCRAM	   357#	  3999	  4023	  8924	 10234
RCRAM1	   909#	  8913	  9023	 12969
RCRAM2	   910#	  8909	  9025	 12970
RCRAM3	   911#	  9027	 12971
RCRAM4	   912#	  9029	 12972
RCSPEC	   913#	 12953
RDCLK	  5050	  5165
RDRAM	   408#	  9229	 10136
RDRTMP	 13085	 13094	 13111	 13112	 13747#
READ0	   931#	  3475	  3488
READ1	   932#	  3460
READ2	   933#
READ3	   934#
REGRST	   291#
REGSAV	   290#
RELIAB	   204#
REMOTE	   130#
REQLST	 11330	 11342
REQMAX	 11328	 11342#
RESVEC	   595#	  6198
RESVED	   593#
REVCNT	 10705	 10779	 13640#
RFMAD0	   815#
RFMAD1	   816#
RFMAD2	   817#
RFMAD3	   818#
RM	   860#
RPADDR	   327#
RPASB	  1724	  1898	  2429	  2595	  2692	  8096	  8105	  8115	  8149	  8202
	 10385	 10508	 10539	 10557	 10984	 13640
RPBASE	   328#
RPEOF	 13636#
RPERRO	   329#
RPFIL	 10383	 10385#
RPFILE	   309#
RPFIND	   321#
RPINIT	   313#
RPLKUP	   322#
RPLOAD	   314#
RPRDFL	   323#
RPREAD	   325#
RPTFLG	  2044	  2053	  2679	  2687	  2846	  2860	  2879	  2886	  2904	  3435
	  3505	  3533	  4511	  7839	  8400	  8449	  8733	  8757	  9031	 12480
	 12553	 12579	 12641	 13695#
RPUNIT	 13548#
RPWRFL	   324#
RPWRIT	   326#
RSTART	   194#
RUBOUT	   697#	  7347
RUNLP	   219#	  2082
RXASB	  1644	  2447	  2610	  5554	  8181	 10980	 13650
RXBASE	   336#
RXCOPY	   125#
RXFILE	   332#	 10394	 10517
RXINIT	   333#
RXRDFL	   334#	 10424	 10546
RXREAD	   337#
RXUNIT	 13546#
RXWRT	   338#
RXWTFL	   335#
SAILVR	    15#	   665	   666	   700	  2063	  4221	  4965	  4966	  4974	  4999
	  5027	  5082	  5245	  6213	  6256	  6285	  8222	  8242	  8271	  8808
	 13565	 13757
SCD	   807#
SEADR	  5358	  5593	  5594	  5596	  5606	  5608	 13564#
SECLK	   869#	 12903
SETFLG	   295#	  2130	  2678	  2695	  2699	  3502	  3583	  3585	  4219	  4437
	  4648	  4654	  4661	  4663	  4665	  4667	  4774	  4789	  4847	  4890
	  4895	  4950	  4952	  4954	  4956	  4958	  4997	  5115	  5163	  5292
	  5294	  5488	  5512	  5520	  5526	  5590	  5602	  6297	  6299	  6301
	  6303	  6413	  7170	  7199	 10376	 10513	 11495	 11920	 12413
SETMPH	   373#	 12429
SETMR	   872#	 12685	 12893
SETRUN	   920#	  3031	  3092	  3580
SHFT36	  5322	  5328	  7592	  7607	  7656
SHIFTL	   293#	  3840	  4126	  9105	  9149	  9189	  9195	  9245
SHIFTR	   292#	  2911	  3430	  3463	  3480	  4120	  4134	  9007	  9258	  9264
	  9270
SIGNL	 12817	 12834	 13742#
SIGNL2	 12920	 12925	 12951	 13744#
SIGNL3	 12944	 12946	 12950	 13745#
SIPNT	  3641	  3768#
SLASH	   681#	  6530
SM	   370#	  3675	  4213	 10292	 10957
SND10	  4571
SNDEN	 11083	 11371
SNDENR	 11094
SP	   588#	  1992	  1994	  1996	  1997	  1999	  2075	  2140	  2143	  2709
	  2712	  2719	  2725	  2726	  3028	  3035	  3505	  3533	  4116	  4126
	  4156	  4160	  4228	  4231	  5041	  5044	  5067	  5073	  5110	  5115
	  5123	  5128	  5177	  5178	  5179	  5180	  5210	  5211	  5212	  5213
	  5268	  5273	  5605	  5851	  5852	  5864	  5865	  5933	  5934	  5938
	  5939	  5957	  5958	  5966	  5979	  5980	  5981	  6032	  6033	  6034
	  6158	  6171	  6175	  6176	  6207	  6208	  6236	  6396	  6402	  6406
	  6416	  6418	  6419	  6420	  6421	  6422	  6423	  6424	  6425	  6541
	  6547	  6567	  6569	  6590	  6602	  6862	  6958	  6972	  7137	  7186
	  7207	  7243	  7247	  7261	  7276	  7287	  7297	  7333	  7680	  7681
	  7713	  7714	  7716	  7750	  7753	  7764	  7774	  7776	  7882	  7883
	  7884	  7888	  7889	  7890	  7892	  7896	  7902	  7908	  7914	  7915
	  7919	  7920	  7934	  7945	  7948	  7949	  8211	  8221	  8285	  8291
	  8293	  8335	  8384	  8385	  8386	  8387	  8390	  8391	  8392	  8393
	  8395	  8398	  8405	  8410	  8414	  8415	  8417	  8423	  8424	  8425
	  8426	  8431	  8437	  8443	  8447	  8456	  8460	  8461	  8462	  8463
	  8464	  8468	  8474	  8476	  8556	  8557	  8560	  8563	  8565	  8569
	  8570	  8574	  8575	  8578	  8581	  8588	  8593	  8606	  8612	  8614
	  8625	  8630	  8639	  8642	  8647	  8651	  8652	  8759	  8768	  8801
	  8805	  8811	  8830	  8849	  8853	  8912	  8915	  9812	  9822	  9984
	 10000	 10016	 10038	 10091	 10100	 10113	 10117	 10343	 10356	 10438
	 10469	 10474	 10602	 10604	 10650	 10709	 10718	 10799	 10801	 10828
	 10831	 11138	 11141	 11142	 11143	 11147	 11148	 11198	 11199	 11345
	 11350	 11353	 11432	 11455	 11464	 11477	 11497	 11504	 11560	 11564
	 11587	 11599	 11607	 11642	 11763	 11786	 11809	 11810	 11811	 11812
	 11813	 11814	 11816	 11818	 11819	 11820	 11821	 11822	 11823	 11831
	 11832	 11833	 11835	 11837	 11838	 11839	 11847	 11848	 11849	 11851
	 11853	 11854	 11855	 12467	 12475	 12478	 12483	 12497	 12525	 12548
	 12551	 12556	 12574	 12577	 12582	 12620	 12636	 12639	 12644	 12650
	 12663	 12670	 12678	 12703	 12762	 12767	 12780	 12784	 12791	 12883
	 12891	 12933	 12943	 13062	 13064	 13075	 13102	 13114	 13175	 13177
	 13347	 13372	 13373	 13392
SPACE	   679#	  6527	  7778	  9687	  9702
SRT10	  5587
SRT11	  5359
SRT11X	  5586
SRTFLG	  5508	  9709	  9712	 11963	 13658#
SSCLK	   868#	 12531	 12738
STACK	   570	  1992	  5604	  6158	  6171	  7919	  8221
START	  5693	  6322	  8282
STATUS	   740#
STKLMT	   611#
STPCLK	   866#	  3023	  3087	  3640	 12571	 12684	 12693	 12895	 13202	 13215
STRCLK	   867#	  3029	  3090	  3578	  8634	  8731	 12587	 12686	 12894
SWITCH	   298#	  6402	  6596	  9812
SWR	   612#	  5038	  5222	  7158	  9786
SWS10	  4856	  4864	  4872	  5230	  5253	  6260	 13554#
SWSLFT	   822#
SWTDEP	  4221	  4848	  4851	  4859	  4953	  5246	 12707	 13757#
SWTSAM	   299#
SYN	   705#
T11DBF	  4577	  4712	 11281	 13573#
T11MSE	 11329
TA11	   605#
TAASB	  1606
TAB	   671#	  2033	  6536	  7732	  7779	 10495
TAPT	   128#
TBIT	   577#
TBITVE	   597#
TC11	   606#
TCASB	    57#	  1690
TCBA	  1717#	 10695
TCBLKM	  1705#	  1711
TCCM	  1714#	 10697
TCCM1	  1715#	 10742
TCDATM	  1706#	  1711
TCDO	  1699#	 10685	 10688	 10696
TCDT	  1718#	 10725	 10730	 10731	 10737	 10738
TCERR	  1708#	 10720
TCIE	  1698#
TCILO	  1696#
TCMTE	  1707#	  1711
TCPAR	  1704#	  1711
TCRDAT	  1700#	 10685
TCRDY	  1709#	 10720
TCREV	  1703#	 10698
TCRNUM	  1702#	 10696
TCSELE	  1697#
TCSOFT	  1711#	 10755
TCST	  1713#	 10753	 10755
TCUINT	  6229
TCWC	  1716#	 10694
TCWDAT	  1701#	 10688
TDDT	  3600	  3601
TDELAY	   297#	  3021	  3085	  3630	  7874
TDIAG	  4249
TELASB	    64#	  1874	  2057	  2374	  2562	  5811	  5845	  6218	  7386	  7405
	  7410	  7430	  7435	  8230	 13597
TEMP	  9579	 13723#
TENAC0	 13753#
TENAD1	   727#
TENAD2	   728#
TENCER	  4424	  4567
TENCHR	   368#	  6806	  7224
TENCLK	  3656	  3815	  4928	  4959	  4986	  4998	  5023	  5057	  5062	  5075
	 12706	 13608#
TENCMD	  4579
TENDAT	  4614	  4618	  4807	  4811	 13752#
TENDEA	  4563	  4910
TENMO	  8334	 13037
TENRUN	  2126	  3017	  3081	  3584	  3645	  3845	  4220	  4556	  4664	  4725
	  4730	  4766	  4927	  4931	  5044	  5242	  5263	  6300	  7912	  8415
	  8768	 12488	 12703	 13706#
TENSP	   366#	  3544	  3620	  3747	  3847	 12705
TENSW	   364#	  4222	  4878	  4882	  5041
TENSWD	 13607#
TENTTY	  3612	  4242	  4790	  5265	 13672#
TEXTER	   670#
TGOADR	  5611	 13561#
TILINA	  7235
TILINC	  7227	  7230
TILNWF	  7183	  7200	  7203	  7211	 13683#
TIM11	  6022	  6024	  6026	  8819	  8835	  8836	  8837	  8840	  8843	  8846
	  8863	 13565#
TIMADR	  5087	  5089	  5096	  5097	  5107	  5137	  5139	  5150	 13570#
TIMBAS	  5108	  5121	  8815	  8855	  8856	  8857	 13566#
TIMFLG	  5164	  8861	 12712	 13571#
TIMTMP	  5054	  5120	  5141	  5155	  5156	  5169	  5204	 13569#
TKVEC	   603#
TLDR	  4257
TMON	  4262
TMSFLG	  5047	  5049	  8865	 12713	 13572#
TO10	   789#
TO10AD	   731#
TO10BC	   729#
TO10BM	   811#
TO10DB	   855#	 11502
TO10DN	   849#	 11271
TO10DT	   733#
TO10ER	   850#	 11271	 11298
TO10Q	 11183	 11296	 11300	 11302	 11362	 11386	 11396	 11478	 11538	 13588#
TO11	   791#
TO11AD	   732#
TO11BC	   730#
TO11BM	   767#
TO11DB	   852#	 11279
TO11DN	   856#	 11275
TO11DT	   734#
TO11ER	   862#	 11275	 11323
TOTALS	   195#
TOUTBF	    83#	  5515	  5518	 11950	 11953	 12360
TPVEC	   604#
TRAPVE	   602#
TRMTAB	  7767
TRTVEC	   596#
TRYCTR	 10691	 10757	 13645#
TTALTM	   238#
TTBACK	   231#	  2686
TTBTRM	   246#	  2926	  2948	  2967	  3012	  8905	  9053	  9221
TTCOCT	   234#	  2844	  5381	  5392	  5440	  5457	  5467	  7794	  7801	  9315
	  9321
TTERM	   247#	  7644	  7759
TTI36	   239#	  7812
TTIBRK	   240#	  2027	  2838	  4498	  5386	  9088	  9299
TTICCL	   229#
TTICHR	   230#	  2097	  2922	  2942	  2963	  2983	  3008	  3046	  3492	  4100
	  4103	  4820	  7131	  7455	  7489	  7503	  7553	  7569	  7582	  7614
	  7721	  7728	  7765	  9679	  9696
TTICRA	   244#	  3996	  4014	  8897	  9036	  9297
TTICSR	   617#
TTIDBR	   616#
TTIDEC	   236#	  3625	  3659	  3818	  5785	  7869
TTILIN	   227#	  4817	  7331	  9136
TTILNW	   228#
TTIOCT	   233#	  7790
TTIS36	   243#	  2812	  3004	  3753	  3763	  3795	  4202	  4397	  4402	  4452
	  4456	  4494	  4504	  4875
TTISDL	   241#	  2089	  2684	  3590	  3623	  3657	  3750	  3816	  3826	  3858
	  3950	  4043	  4096	  4107	  4200	  4395	  4492	  4873	  5353	  5378
	  5454	  5465	  5544	  5782	  7788	  7810	  7867	  8894	  9019	  9205
	  9313	  9319	  9677
TTISDO	   242#	  2796	  2806	  2836	  3836	  3863	  3983	  4017	  4045	  4110
	  5546	  5794	  7818	  9078	  9102	  9108	  9145	  9152	  9188	  9194
	  9208
TTITRM	   245#	  2823	  2893	  2902	  2934	  2956	  2975	  2987	  2997	  3053
	  3063	  3072	  3079	  3405	  3412	  3444	  3496	  3543	  3556	  3598
	  3638	  3674	  3683	  3871	  4250	  4427	  4445	  5589	  6085	 10503
	 10927
TTIYES	   237#
TTLOOK	   232#	  4898	  7106
TTOCSR	   614#
TTOCTE	   235#	  5356	  5437
TTODBR	   613#
TTPINI	   248#	  2003	  6240	  6809	  7328	 10378
TXTINH	   206#
UPECD	   827#
USEVIR	   755#
UTLASB	  2368	  2556	  2636	  5569
VBIT	   576#	  7753	  8476	  8581	  8612
VEC02	   794#
VEC03	   793#
VEC04	   792#
VERIFY	  5489	  5506	  9974	 10004	 10075	 10131	 10204	 10230	 10295	 10321
	 13696#
VFUDAT	 13620#
VMADAT	 13348	 13360	 13379	 13392	 13738#
VRBFLG	  4428	  4430	  4438	  8379	  8402	  8418	  8582	 13736#
VT	   674#
WCRAM	   356#	  4009	  9326	 10232
WCSAV	 10660	 10672	 10694	 13647#
WDRAM	   409#	  9181	 10133
WEP	   809#
WFILE	   127#
WIRAR	 13135
WIRAR1	  3006
WREADY	 12752	 12775	 12795	 12797	 12812	 12825	 12835	 12838	 12845	 12846
	 12847	 12848	 12849	 12851	 12855	 12856	 12876	 12877	 12911	 12918
	 12948	 12949	 12973	 12974	 12990	 12991	 13353	 13359	 13741#
WRLIST	 12837
WRTBAK	 13637#
WWADR	   358#	  8632	  9040	 10249	 12809	 12902	 13008	 13039
XEPT	   760#	  4615	  4620	  4635	  4676	  4713	  4808	  4853	  4861	  4938
	  4990	  5018	  5051	  5067	  5084	  5134	  5166	  5250	  5268	  5330
	  5342	 11498
XMEMSZ	   131#	  4461
XOFF	   684#	  6636	  7350
XON	   685#	  6634	  7349
XORCR	   619#
XORSR	   620#
XR	  3697#	  3719	  3722#	  3744	  4172#	  4196	  4275#	  4307	  4310#	  4340
	  4343#	  4365	  4368#	  4390	  8489#	  8519	  8658#	  8690	  8693#	  8723
	 12450#	 12452
XUPT	   756#
XXDAT	 12622	 13739#
ZBIT	   575#	  7750	  8476	  8578
ZEROS	 13006	 13737#
ZSTOP	   765#
$$$CC	  2123	  2128	  3652
$$$FF	 13480#
$$$NAM	  9595	  9720#
$$$ST	  4251#	  5615
$$ACT	  9995	 10032	 10104	 10161	 10270	 10354
$$BARG	 13523#	 13523	 13524#	 13524	 13525#	 13525	 13526#	 13526	 13527#	 13527
	 13528#	 13528	 13529#	 13529	 13530#	 13530	 13531#	 13531	 13532#	 13532
	 13533#	 13533	 13534#	 13534	 13535#	 13535	 13536#	 13536	 13537#	 13537
	 13538#	 13538	 13539#	 13539	 13540#	 13540	 13541#	 13541	 13542#	 13542
	 13543#	 13543	 13544#	 13544	 13545#	 13545	 13546#	 13546	 13547#	 13547
	 13548#	 13548	 13549#	 13549	 13550#	 13550	 13551#	 13551	 13552#	 13552
	 13553#	 13553	 13554#	 13554	 13555#	 13555	 13556#	 13556	 13557#	 13557
	 13558#	 13558	 13559#	 13559	 13560#	 13560	 13561#	 13561	 13562#	 13562
	 13563#	 13563	 13564#	 13564	 13565#	 13565	 13566#	 13566	 13567#	 13567
	 13568#	 13568	 13569#	 13569	 13570#	 13570	 13571#	 13571	 13572#	 13572
	 13573#	 13573	 13574#	 13574	 13575#	 13575	 13576#	 13576	 13577#	 13577
	 13578#	 13578	 13579#	 13579	 13580#	 13580	 13581#	 13581	 13582#	 13582
	 13583#	 13583	 13584#	 13584	 13585#	 13585	 13586#	 13586	 13587#	 13587
	 13588#	 13588	 13589#	 13589	 13590#	 13590	 13591#	 13591	 13592#	 13592
	 13593#	 13593	 13594#	 13594	 13595#	 13595	 13596#	 13596	 13597#	 13597
	 13598#	 13598	 13599#	 13599	 13600#	 13600	 13601#	 13601	 13602#	 13602
	 13603#	 13603	 13604#	 13604	 13605#	 13605	 13606#	 13606	 13607#	 13607
	 13608#	 13608	 13609#	 13609	 13610#	 13610	 13611#	 13611	 13612#	 13612
	 13613#	 13613	 13614#	 13614	 13615#	 13615	 13616#	 13616	 13617#	 13617
	 13618#	 13618	 13619#	 13619	 13620#	 13620	 13621#	 13621	 13622#	 13622
	 13623#	 13623	 13624#	 13624	 13625#	 13625	 13626#	 13626	 13627#	 13627
	 13628#	 13628	 13629#	 13629	 13630#	 13630	 13631#	 13631	 13632#	 13632
	 13633#	 13633	 13634#	 13634	 13635#	 13635	 13636#	 13636	 13637#	 13637
	 13638#	 13638	 13639#	 13639	 13640#	 13640	 13641#	 13641	 13642#	 13642
	 13643#	 13643	 13644#	 13644	 13645#	 13645	 13646#	 13646	 13647#	 13647
	 13648#	 13648	 13649#	 13649	 13650#	 13650	 13651#	 13651	 13652#	 13652
	 13653#	 13653	 13654#	 13654	 13655#	 13655	 13656#	 13656	 13657#	 13657
	 13658#	 13658	 13659#	 13659	 13660#	 13660	 13661#	 13661	 13662#	 13662
	 13663#	 13663	 13664#	 13664	 13665#	 13665	 13666#	 13666	 13667#	 13667
	 13668#	 13668	 13669#	 13669	 13670#	 13670	 13671#	 13671	 13672#	 13672
	 13673#	 13673	 13674#	 13674	 13675#	 13675	 13676#	 13676	 13677#	 13677
	 13678#	 13678	 13679#	 13679	 13680#	 13680	 13681#	 13681	 13682#	 13682
	 13683#	 13683	 13684#	 13684	 13685#	 13685	 13686#	 13686	 13687#	 13687
	 13688#	 13688	 13689#	 13689	 13690#	 13690	 13691#	 13691	 13692#	 13692
	 13693#	 13693	 13694#	 13694	 13695#	 13695	 13696#	 13696	 13697#	 13697
	 13698#	 13698	 13699#	 13699	 13700#	 13700	 13701#	 13701	 13702#	 13702
	 13703#	 13703	 13704#	 13704	 13705#	 13705	 13706#	 13706	 13707#	 13707
	 13708#	 13708	 13709#	 13709	 13710#	 13710	 13711#	 13711	 13712#	 13712
	 13713#	 13713	 13714#	 13714	 13715#	 13715	 13716#	 13716	 13717#	 13717
	 13718#	 13718	 13719#	 13719	 13720#	 13720	 13721#	 13721	 13722#	 13722
	 13723#	 13723	 13724#	 13724	 13725#	 13725	 13726#	 13726	 13727#	 13727
	 13728#	 13728	 13729#	 13729	 13730#	 13730	 13731#	 13731	 13732#	 13732
	 13733#	 13733	 13734#	 13734	 13735#	 13735	 13736#	 13736	 13737#	 13737
	 13738#	 13738	 13739#	 13739	 13740#	 13740	 13741#	 13741	 13742#	 13742
	 13743#	 13743	 13744#	 13744	 13745#	 13745	 13746#	 13746	 13747#	 13747
	 13748#	 13748	 13749#	 13749	 13750#	 13750	 13751#	 13751	 13752#	 13752
	 13753#	 13753	 13754#	 13754	 13755#	 13755	 13756#	 13756	 13757#	 13757
$$BUF	 13495#	 13496	 13523	 13523#	 13524	 13524#	 13525	 13525#	 13526	 13526#
	 13527	 13527#	 13528	 13528#	 13529	 13529#	 13530	 13530#	 13531	 13531#
	 13532	 13532#	 13533	 13533#	 13534	 13534#	 13535	 13535#	 13536	 13536#
	 13537	 13537#	 13538	 13538#	 13539	 13539#	 13540	 13540#	 13541	 13541#
	 13542	 13542#	 13543	 13543#	 13544	 13544#	 13545	 13545#	 13546	 13546#
	 13547	 13547#	 13548	 13548#	 13549	 13549#	 13550	 13550#	 13551	 13551#
	 13552	 13552#	 13553	 13553#	 13554	 13554#	 13555	 13555#	 13556	 13556#
	 13557	 13557#	 13558	 13558#	 13559	 13559#	 13560	 13560#	 13561	 13561#
	 13562	 13562#	 13563	 13563#	 13564	 13564#	 13565	 13565#	 13566	 13566#
	 13567	 13567#	 13568	 13568#	 13569	 13569#	 13570	 13570#	 13571	 13571#
	 13572	 13572#	 13573	 13573#	 13574	 13574#	 13575	 13575#	 13576	 13576#
	 13577	 13577#	 13578	 13578#	 13579	 13579#	 13580	 13580#	 13581	 13581#
	 13582	 13582#	 13583	 13583#	 13584	 13584#	 13585	 13585#	 13586	 13586#
	 13587	 13587#	 13588	 13588#	 13589	 13589#	 13590	 13590#	 13591	 13591#
	 13592	 13592#	 13593	 13593#	 13594	 13594#	 13595	 13595#	 13596	 13596#
	 13597	 13597#	 13598	 13598#	 13599	 13599#	 13600	 13600#	 13601	 13601#
	 13602	 13602#	 13603	 13603#	 13604	 13604#	 13605	 13605#	 13606	 13606#
	 13607	 13607#	 13608	 13608#	 13609	 13609#	 13610	 13610#	 13611	 13611#
	 13612	 13612#	 13613	 13613#	 13614	 13614#	 13615	 13615#	 13616	 13616#
	 13617	 13617#	 13618	 13618#	 13619	 13619#	 13620	 13620#	 13621	 13621#
	 13622	 13622#	 13623	 13623#	 13624	 13624#	 13625	 13625#	 13626	 13626#
	 13627	 13627#	 13628	 13628#	 13629	 13629#	 13630	 13630#	 13631	 13631#
	 13632	 13632#	 13633	 13633#	 13634	 13634#	 13635	 13635#	 13636	 13636#
	 13637	 13637#	 13638	 13638#	 13639	 13639#	 13640	 13640#	 13641	 13641#
	 13642	 13642#	 13643	 13643#	 13644	 13644#	 13645	 13645#	 13646	 13646#
	 13647	 13647#	 13648	 13648#	 13649	 13649#	 13650	 13650#	 13651	 13651#
	 13652	 13652#	 13653	 13653#	 13654	 13654#	 13655	 13655#	 13656	 13656#
	 13657	 13657#	 13658	 13658#	 13659	 13659#	 13660	 13660#	 13661	 13661#
	 13662	 13662#	 13663	 13663#	 13664	 13664#	 13665	 13665#	 13666	 13666#
	 13667	 13667#	 13668	 13668#	 13669	 13669#	 13670	 13670#	 13671	 13671#
	 13672	 13672#	 13673	 13673#	 13674	 13674#	 13675	 13675#	 13676	 13676#
	 13677	 13677#	 13678	 13678#	 13679	 13679#	 13680	 13680#	 13681	 13681#
	 13682	 13682#	 13683	 13683#	 13684	 13684#	 13685	 13685#	 13686	 13686#
	 13687	 13687#	 13688	 13688#	 13689	 13689#	 13690	 13690#	 13691	 13691#
	 13692	 13692#	 13693	 13693#	 13694	 13694#	 13695	 13695#	 13696	 13696#
	 13697	 13697#	 13698	 13698#	 13699	 13699#	 13700	 13700#	 13701	 13701#
	 13702	 13702#	 13703	 13703#	 13704	 13704#	 13705	 13705#	 13706	 13706#
	 13707	 13707#	 13708	 13708#	 13709	 13709#	 13710	 13710#	 13711	 13711#
	 13712	 13712#	 13713	 13713#	 13714	 13714#	 13715	 13715#	 13716	 13716#
	 13717	 13717#	 13718	 13718#	 13719	 13719#	 13720	 13720#	 13721	 13721#
	 13722	 13722#	 13723	 13723#	 13724	 13724#	 13725	 13725#	 13726	 13726#
	 13727	 13727#	 13728	 13728#	 13729	 13729#	 13730	 13730#	 13731	 13731#
	 13732	 13732#	 13733	 13733#	 13734	 13734#	 13735	 13735#	 13736	 13736#
	 13737	 13737#	 13738	 13738#	 13739	 13739#	 13740	 13740#	 13741	 13741#
	 13742	 13742#	 13743	 13743#	 13744	 13744#	 13745	 13745#	 13746	 13746#
	 13747	 13747#	 13748	 13748#	 13749	 13749#	 13750	 13750#	 13751	 13751#
	 13752	 13752#	 13753	 13753#	 13754	 13754#	 13755	 13755#	 13756	 13756#
	 13757	 13757#	 13758	 13761	 13766
$$C1	  4816
$$C2	 12004
$$CF	  3691	  8787
$$CI	  3681
$$CLC	  2020#	  2020	  2026#	  2026	  2082#	  2082	  2831#	  2831	  2898#	  2898
	  2931#	  2931	  2939#	  2939	  2953#	  2953	  2961#	  2961	  2972#	  2972
	  2980#	  2980	  2992#	  2992	  3017#	  3017	  3058#	  3058	  3068#	  3068
	  3076#	  3076	  3107#	  3107	  3155#	  3166	  3172#	  3185	  3191#	  3204
	  3210#	  3222	  3228#	  3240	  3246#	  3259	  3265#	  3280	  3286#	  3301
	  3307#	  3323	  3329#	  3343	  3349#	  3363	  3369#	  3381	  3387#	  3399
	  3409#	  3409	  3416#	  3416	  3459#	  3459	  3474#	  3474	  3487#	  3487
	  3551#	  3551	  3610#	  3610	  3652#	  3652	  3808#	  3808	  3956#	  3956
	  4055#	  4055	  4085#	  4085	  4119#	  4119	  4133#	  4133	  4159#	  4159
	  4165#	  4165	  4412#	  4412	  4435#	  4435	  4443#	  4443	  4488#	  4488
	  4533#	  4533	  4612#	  4612	  4729#	  4729	  4736#	  4736	  4771#	  4771
	  4782#	  4782	  4816#	  4816	  4870#	  4870	  5079#	  5079	  5339#	  5339
	  5672#	  5672	  5677#	  5677	  6089#	  6089	  6260#	  6260	  6399#	  6399
	  6412#	  6412	  6429#	  6429	  6851#	  6851	  7286#	  7286	  7304#	  7304
	  7899#	  7899	  7905#	  7905	  7911#	  7911	  7924#	  7924	  7930#	  7930
	  7937#	  7937	  8260#	  8260	  8308#	  8308	  8408#	  8408	  8435#	  8435
	  8441#	  8441	  8447#	  8447	  8454#	  8454	  8587#	  8587	  8592#	  8592
	  8597#	  8597	  8973#	  8973	  9116#	  9116	  9127#	  9127	  9135#	  9135
	  9169#	  9169	  9243#	  9243	  9952#	  9952	 10073#	 10073	 10082#	 10082
	 10571#	 10571	 10599#	 10599	 10765#	 10765	 10768#	 10768	 10775#	 10775
	 10785#	 10785	 10898#	 10898	 10935#	 10935	 10944#	 10944	 10951#	 10951
	 10975#	 10975	 11349#	 11349	 11971#	 11971	 11976#	 11976	 11980#	 11980
	 11985#	 11985	 11989#	 11989	 12492#	 12492	 12497#	 12497	 12505#	 12505
	 12509#	 12509
$$CLIT	   427#	  2019	  2020	  2020#	  2025	  2026	  2026#	  2081	  2082	  2082#
	  2830	  2831	  2831#	  2897	  2898	  2898#	  2930	  2931	  2931#	  2938
	  2939	  2939#	  2952	  2953	  2953#	  2960	  2961	  2961#	  2971	  2972
	  2972#	  2979	  2980	  2980#	  2991	  2992	  2992#	  3016	  3017	  3017#
	  3057	  3058	  3058#	  3067	  3068	  3068#	  3075	  3076	  3076#	  3106
	  3107	  3107#	  3156	  3165#	  3173	  3184#	  3192	  3203#	  3211	  3221#
	  3229	  3239#	  3247	  3258#	  3266	  3279#	  3287	  3300#	  3308	  3322#
	  3330	  3342#	  3350	  3362#	  3370	  3380#	  3388	  3398#	  3408	  3409
	  3409#	  3415	  3416	  3416#	  3458	  3459	  3459#	  3473	  3474	  3474#
	  3486	  3487	  3487#	  3550	  3551	  3551#	  3609	  3610	  3610#	  3651
	  3652	  3652#	  3807	  3808	  3808#	  3955	  3956	  3956#	  4054	  4055
	  4055#	  4084	  4085	  4085#	  4118	  4119	  4119#	  4132	  4133	  4133#
	  4158	  4159	  4159#	  4164	  4165	  4165#	  4411	  4412	  4412#	  4434
	  4435	  4435#	  4442	  4443	  4443#	  4487	  4488	  4488#	  4532	  4533
	  4533#	  4611	  4612	  4612#	  4728	  4729	  4729#	  4735	  4736	  4736#
	  4770	  4771	  4771#	  4781	  4782	  4782#	  4815	  4816	  4816#	  4869
	  4870	  4870#	  5078	  5079	  5079#	  5338	  5339	  5339#	  5671	  5672
	  5672#	  5676	  5677	  5677#	  6088	  6089	  6089#	  6259	  6260	  6260#
	  6398	  6399	  6399#	  6411	  6412	  6412#	  6428	  6429	  6429#	  6850
	  6851	  6851#	  7285	  7286	  7286#	  7303	  7304	  7304#	  7898	  7899
	  7899#	  7904	  7905	  7905#	  7910	  7911	  7911#	  7923	  7924	  7924#
	  7929	  7930	  7930#	  7936	  7937	  7937#	  8259	  8260	  8260#	  8307
	  8308	  8308#	  8407	  8408	  8408#	  8434	  8435	  8435#	  8440	  8441
	  8441#	  8446	  8447	  8447#	  8453	  8454	  8454#	  8586	  8587	  8587#
	  8591	  8592	  8592#	  8596	  8597	  8597#	  8972	  8973	  8973#	  9115
	  9116	  9116#	  9126	  9127	  9127#	  9134	  9135	  9135#	  9168	  9169
	  9169#	  9242	  9243	  9243#	  9951	  9952	  9952#	 10072	 10073	 10073#
	 10081	 10082	 10082#	 10570	 10571	 10571#	 10598	 10599	 10599#	 10764
	 10765	 10765#	 10767	 10768	 10768#	 10774	 10775	 10775#	 10784	 10785
	 10785#	 10897	 10898	 10898#	 10934	 10935	 10935#	 10943	 10944	 10944#
	 10950	 10951	 10951#	 10974	 10975	 10975#	 11348	 11349	 11349#	 11970
	 11971	 11971#	 11975	 11976	 11976#	 11979	 11980	 11980#	 11984	 11985
	 11985#	 11988	 11989	 11989#	 12491	 12492	 12492#	 12496	 12497	 12497#
	 12504	 12505	 12505#	 12508	 12509	 12509#	 13477	 13480	 13482	 13489
$$CLRF	  8387
$$CMDE	  5364	  5466	  5480
$$CNTL	  1858
$$CONS	  1860	  2022	  2026	  2092
$$COR	  9990	 10025	 10098	 10349
$$DFX1	 12532
$$DFXD	  8773	 12565	 12596	 12739	 12744	 12746	 12887	 12904	 13078	 13203
	 13211	 13216	 13227	 13241	 13245
$$DTX	 10675	 10682
$$DTXC	 10663	 10676
$$DVX	 10534	 10552	 10582	 10650
$$ECA	  8931	  8974	  9044
$$FF	  6325
$$GO	 10970	 11965
$$ILOA	  1859
$$LD11	  9985	 10020	 10092
$$LITT	   427	 13479#
$$NAM	  9722
$$P23	  6891	  6913
$$PARA	  5387	  5463
$$PEX	  6851	  6857	  6992
$$PEX1	  7035
$$PEX2	  7085	  7116#	  7132	  7136	  7153
$$PEX3	  7161	  7166	  7172
$$PEX4	  7722	  7743	  7761	  7774	  7792	  7797	  7804#	  7814	  7820
$$PEX5	  7749	  7751	  7754	  7776
$$PEX6	  7480	  7532
$$PEX7	  7476	  7533
$$PMSG	  7987
$$PMSR	  7988
$$PNTX	  6513	  6556	  6576	  6586	  6602
$$PSX2	  7084	  7119#	  7134	  7138	  7155
$$RAM	 10155	 10264
$$ST	  4203#
$$STJR	  3600	  3601	  3613	  4205	  4239	 12417	 13557#
$$STKM	  7945	 13496#
$$SVSP	  2709	  2712	  2719	  2725	 13722#
$$SWR	  5038	  5222	  5223	 13556#
$$TDX	  4669	  4764
$$TEN	 10344	 10370
$$ZZQ	  3158#	  3169	  3175#	  3188	  3194#	  3207	  3213#	  3225	  3231#	  3243
	  3249#	  3262	  3268#	  3283	  3289#	  3304	  3310#	  3326	  3332#	  3346
	  3352#	  3366	  3372#	  3384	  3390#	  3402
$0FLG	  6874	  6941	  6983	  7194	  7248	  7253	  7264	  7266	  7546	  7561
	  7564	  7568	  7580	  7597	  7613	  7622	 13686#
$10ADR	  8341	  8360	  8553
$11ADR	 11339
$11ECH	 11337
$11ETH	 11338
$99	 11426
$ADR	  9082	  9127	  9164	  9176	  9298	  9324	 13700#
$ADR1	  8926	  8933	  8956	  8968	  8987	  9001	 13701#
$ALADX	  2957#	  3518
$ALARX	  2935#	  3516
$ALBRX	  2976#	  3517
$ALLAD	  2949#	  3511
$ALLAR	  2927#	  3509
$ALLBR	  2968#	  3510
$ALLEB	  3525
$ALLEC	  3507	  8907#
$ALLFE	  3519
$ALLFM	  2903#	  3524
$ALLMQ	  2894#	  3523
$ALLPC	  3013#	  3513	  4776
$ALLPI	  3445#	  4778
$ALLSC	  3512
$ALPCF	  3080#	  4782
$ALPIG	  3446	  3529
$ALPIH	  3447	  3530
$ALPIO	  3448	  3531
$ALPIX	  3482
$ALPIY	  3489
$ALSTA	  3551	  4771
$ALVMA	  3054#	  3520	  4777
$ALVMH	  3064#	  3526
$ASCR5	  8113
$BELLT	 13433
$BKFLG	 13549#
$BUFRC	 10272	 12906	 12962	 12963	 13743#
$BURST	  8067
$CKS11	 10052	 10068	 10114	 10533	 13642#
$CKSUM	  2011	  6167
$CLKHM	  5183	  5187
$CLKMD	  5182	  5185	  5195
$CLKPR	  8142
$CLKSE	  5184	  5189
$CLKST	  5180
$CLKTV	  6229
$CMCLR	  4243	  5599
$CMDE	  5485	  5548	 10511
$CMDER	  2052	  2090	  2633	  2692	  5580	  5679	  6478	 10385	 10387
$CMP36	  8008
$CMTAG	  6315	 13618#
$CNTLC	  2831	  3610	  3808	  4165	  4870	  5079	  5339	  5688	  7312	  7925
	  8308	  9116	  9169	  9723	  9952	 10073	 10373	 10571	 10599	 10669
	 10898	 10935	 10944	 10975	 11971	 12500
$COMNT	  2585
$CONSL	  3834	  3873	  3981	  4080	  4153	  4772	  5445	  5618	  5790	  6091
	  6467	 10520	 11955	 11966
$CRMD0	  8976
$CRTBL	 13432
$D10AD	  8344	  8367
$D10MO	  8051
$D10ZR	  8052
$D10ZX	  8482
$DC	  2525
$DCNCL	  9300	  9304
$DCTP1	  9000
$DD	  3592
$DDA	  9096	  9139
$DDB	  9099	  9142
$DDNPR	  9089	  9094	  9137
$DDRMS	 13167	 13170	 13178	 13749#
$DDSIZ	  9112#	  9155
$DDT	    91#	  1910
$DDTER	  3621
$DDTX	  2528
$DECN	  5786
$DELAY	  8012
$DFADB	  8063
$DFERR	  2798	  2808	  2810	  2839	  2855	  2857	  2921	  3061	  3500	  3596
	  3810
$DFLEG	  8178
$DFPC	  8061
$DFPC1	 13336
$DFRD	  8056
$DFRDM	  8057
$DFRDT	  8074
$DFSCL	  8060
$DFTIM	 12482	 12555	 12581	 12643
$DFTM1	  4412	  4488	  4533	  4729
$DFTMX	 12510
$DFVMA	  8062
$DFVMH	  8082
$DFWIR	  8059
$DFWRT	  8058	 12679
$DFXCT	  8054	 12526
$DFXFS	 12729	 12749	 13015
$DFXX	 12650
$DI	  2613
$DIAFX	  5305
$DIASX	  2730#	  5287
$DISPH	  2117
$DPER1	  2984	  2986	  3009	  3047	  3052
$DPERR	  2923	  2943	  2964
$DPOS	  8047
$DPOST	  8048
$DPOSV	  8049
$DPOSX	  8337
$DPSVT	  8050
$DPSX1	  8326
$DPVRE	  8562
$DPVRP	  8558
$DPVRV	  8567
$DPVRX	  8576	  8579
$DPVRY	  8583
$DRAM	  4235	  4453	  4454	  4458	  4462	  4475	  4482	  4517	  5094	  5105
	  5143	  5323	  5333	  7594	  7629	  7640	  7641	  7650	  7661	  7665
	  7672	  8368	  8565	  8597	  9097	  9100	  9107	  9118	  9120	  9140
	  9143	  9151	  9157	  9159	  9160	  9161	  9162	  9171	  9174	  9177
	 13748#
$DRAMA	  8066
$DS	  2629
$DT	  2608
$DTAFI	  8147
$DTBAS	  8157
$DTBL	  7054	  7058
$DTBL0	  6672	  6678
$DTBL1	  6680
$DTC	  5545
$DTCHR	   108#	  5270
$DTCLK	    99#	  5069
$DTCMD	   105#	  4678
$DTDI1	 10452
$DTDI2	 10472#	 10501
$DTDIR	 10506
$DTEBA	  8053
$DTF11	   104#	  4617	  4810	  4855	  4940	  4992	  5332	  5344
$DTFLG	    98#	  4715
$DTINF	 10665
$DTINI	  8094
$DTMTD	   109#	  4637
$DTMTI	   110#	  4622
$DTNOP	 11335	 11340
$DTOPR	   107#
$DTQMP	   112#	 11500
$DTRDF	  8155
$DTREA	  8103
$DTRFL	 10654
$DTSEQ	   106#
$DTSWR	   111#	  4863	  5252
$DTT11	   103#	  5020	  5086	  5136
$DTTIM	   102#	  5053	  5168
$DTWRT	  8145
$DTWTF	  8156
$DTX	  5592
$DTXF1	 10759
$DTXF2	 10700
$DTXF3	 10729	 10733	 10736	 10740	 10743	 10747	 10749	 10758	 10780
$DTXFR	 10686
$DVDAT	  8102
$DVFRA	  8111
$DVWRD	  8112
$DWRTT	  8075
$DXCTT	  8055
$EBPAR	  4536	  4683
$EC	  2524
$ECADR	  3997	  4008	  4015	  4022	  8901	  8912	  8919	  8922	  8955	  8960
	  8961	  8962	  8963	  8967	  9037	  9038	  9066	 13698#
$ECGET	  8910	  8915
$ECHRY	 11336
$ECLOK	  8071
$ECMD	  4679	  4686	 11437	 13734#
$ECTIM	  3666	  3775	  3783
$ED	  2527
$EDADR	  9211	  9217	  9222	  9225	  9232	 13699#
$EDODD	  9210
$EMADR	  6861	  7824	  7831	  7844	  7850	  7950	  8288	  8333	  8619	 10604
	 10801	 12466	 12524	 12675	 13720#
$EMTAD	  7953	  7956
$EMTAE	  7953	  8208#
$EMTRP	  6204
$ENBCC	 11341
$END	  8979
$ENDCT	  4244	 13612#
$EOLFL	 13681#
$EOP	  8015
$EOPCT	 13613#
$EOPSE	  8017
$EOR	  7899	  7905
$EOR2	  7915	  7937
$ERFLG	 13616#
$ERREO	  8016
$ERRHL	  7967
$ERRPC	 13614#
$ERTTL	 13615#
$ESYNC	  8072
$EXAM	  8045
$EXAMT	  8046
$EXAMX	  8361
$EXDEP	  8358
$EXIT	  2718	  2746	  3536	  3648	  5257	  6407	  6525	  6702	  6949	  7074
	  7121	  7179	  7298	  7717	  7806	  7863	  8286	  8484	  8571	  8601
	  8615	  8648	  8744	  8764	  8802	  9015	  9291	  9718	 10471	 10588
	 10667	 10789	 10829	 12456	 12486	 12558	 12598	 12671	 12763	 12792
	 12854	 12967	 13024	 13052	 13071	 13115	 13137	 13189	 13229	 13261
	 13273	 13394
$EXITE	  2724	  2748	  5259	  7118	  7262	  7484	  7646	  7724	  8653	  8806
	 10479	 10555	 10656	 10769	 10832	 13249
$EXITS	  7829
$FAD	  9342
$FAR	  9338
$FATAL	  7966	  8029	  8030	  8031	  8032	  8033	  8034	  8089	  8099	  8108
	  8128	  8129	  8130	  8131	  8132	  8133	  8134	  8135	  8152	  8171
	  8172	  8173	  8174	  8193	  8194	  8195	  8196	  8197	  8198	  8199
	  8205
$FATLE	  6184
$FBR	  9346
$FCOND	  9386
$FFE	  9366
$FFM	  9354
$FILPL	  5797
$FJ	  9330
$FMEM	  9382
$FMQ	  9350
$FNUM	  9374
$FORCE	  2140	  2143	  4832	  6590	  7171	  7177	  7186	  7207	  7261	  7276
	  7287	  7297	 13684#
$FSC	  9362
$FSCAD	  9358
$FSH	  9370
$FSTKB	  5876	  5888	  7399
$FSTKS	  2058	  5852	  5877	  5907	  5928	  5941	  5970	  6219	  6224	  7394
	  7397	  7418	  7441	  8234	  8237	  8858
$FSTPB	  5968	  7444
$FSTPS	  5929	  5958	  5963	  5964	  5974	  7421
$FSTRV	  6220
$FSTTV	  6221
$FT	  9334
$FVMA	  9378
$GO	  2592
$HELP	  2574
$HELP1	  5510
$HU	  2565
$IFILE	  2624
$IIX	  5516
$ILDCL	  6159	  6160	  6234	 13605#
$ILDSU	  2013	  2016	  6168	 13540#
$ILLUP	  8216
$ILOAD	 13774
$INBUF	  2049	  2084	  2708	  2729	  2761	  2783	  5283	  5288	  6580	  6581
	  7152	  7186	  7208	  7271	  7295	  9756	  9775	 11922	 12349	 13663#
$INPTC	  2049	  2708	  2784	  4547	  5288	  5310	  5317	  5319	  5320	  5428
	  5582	  6580	  7078	  7080	  7081	  7152	  7154	  7295	  7488	  7497
	  7575	  7579	  7620	  7720	  7742	  7758	  7764	  8902	  9050	  9218
	  9757	  9794	 13662#
$INPTR	  2084	  2736	  2789	  5310	  5317	  6581	  7078	  7259	  7294	  9784
	 13661#
$ITERA	 13611#
$JC	  2626
$JFILE	  2625
$KA	  2631
$KDCEN	  2095	  2105	  2109	  2114	  2118	  6321
$KDCRE	  2110	  2117
$KLCK1	 12469	 12618
$KLCK2	 12484
$KLCK3	 12588
$KLCK4	 12570	 12586
$KONS1	  2028	  2045	  2098	  2100
$KONS2	  2073	  2770
$KONSL	  2818	  3007	  3452	  3499	  3587	  3633	  3669	  3790	  3852	  4010
	  4407	  4480	  4527	  4880	  5421	  5478	  5552	  7877	  9034	  9184
	  9236	  9327
$KONSP	  1997	  1999	  2075	  6236	  7333	  7920	 13693#
$LDB	  2579
$LDBNE	 10082
$LDD	  2582
$LDE	  2577
$LDR	  2578
$LDT	  2576
$LFTBL	 13431
$LINER	  9777	 12362
$LLD2	 10150	 10212	 10246#	 10251	 10308	 10332
$LODAR	  8044
$LRDIN	 10325#	 10358	 10366
$MBPHS	 13253
$MC	  2515
$MICFI	  8144
$MICNU	  8143
$MPHDF	 13270	 13308	 13560#
$MPHMK	 13271	 13311	 13559#
$MRESE	  8040
$MULTP	  8036
$NAMEX	  8146
$NB	    74#
$NEG	  7547	  7551	  7577	  7600	  7624	  7636	 13687#
$NEXT	  8982
$NONXF	 10399
$NOTAS	  7954	  8211
$OCTN	  9186	  9201
$ONETM	  5692	  6250	 12402	 12414	 13539#
$OUTBF	  2705	  4798	  4893	  5285	  6547	  6573	  6583	  7190	 10379	 13667#
$OUTPC	 13664#
$OUTPP	  6585	  6600	  6605	  7245	 13666#
$OUTPT	  2706	  4798	  4893	  5286	  6541	  6545	  6547	  6573	  6575	  6584
	  6600	  7190	 13665#
$P18X	  6896	  6909	  6929#
$P23X	  6877	  6917	  6932#
$P23Y	  6893
$P36B	  8070
$P36BX	  6923
$P36MV	  6898	  6905	  6921	  6927
$PADR	  8073
$PAGDF	 12422
$PARA	  3854	  4391	  5484	  5808
$PARAM	  4050	  4167	  5783	  7755	  9075	  9294
$PASS	 13617#
$PBELL	  8003
$PCMDX	  2707
$PCOMM	  7994
$PCRAM	  8076
$PCRLF	  7991
$PCSAV	 13711#
$PDRAM	  8077
$PEAR	  3963
$PECR	  3971	  4755
$PEDR	  3975	  4762
$PEFM	  3967	  4748
$PEFS	  3979	  4741
$PFORC	  8001
$PGWID	  5780	  6242	  6609	 13676#
$PH1	  7931
$PH2	  6399
$PLDBU	  8092
$PMSG	   255#	  2018	  2024	  2080	  2760	  2829	  3015	  3056	  3066	  3074
	  3105	  3457	  3472	  3485	  3549	  3608	  3650	  3806	  3954	  3962
	  3966	  3970	  3974	  3978	  4053	  4083	  4117	  4131	  4157	  4163
	  4410	  4433	  4441	  4486	  4531	  4610	  4682	  4727	  4734	  4740
	  4747	  4754	  4761	  4769	  4780	  4814	  4868	  5077	  5337	  5670
	  5675	  6087	  6258	  6397	  6410	  6427	  6849	  7284	  7302	  7897
	  7903	  7909	  7922	  7928	  7935	  8258	  8306	  8406	  8433	  8439
	  8445	  8452	  8585	  8590	  8595	  8971	  9114	  9125	  9133	  9167
	  9241	  9721	  9950	  9984	  9989	  9994	 10019	 10024	 10031	 10071
	 10080	 10091	 10097	 10103	 10154	 10160	 10263	 10269	 10343	 10348
	 10353	 10369	 10487	 10492	 10569	 10597	 10763	 10766	 10773	 10783
	 10896	 10933	 10942	 10949	 10973	 11347	 11969	 11974	 11978	 11983
	 11987	 12490	 12495	 12503	 12507
$PMSGR	   256#	  2896	  2929	  2937	  2951	  2959	  2970	  2978	  2990	  3407
	  3414	  4535
$PNORM	  8002
$PNT18	  7998
$PNT23	  7999
$PNT36	  8000
$PNTAL	  6500	  6507	  7986
$PNTBA	  8139
$PNTCH	  6528	  6531	  6534	  6537	  7989
$PNTCI	  8158
$PNTCP	  8068
$PNTDE	  7997
$PNTNB	  7990
$PNTO	  6996
$PNTOC	  7995
$PNTOD	  8004
$PNTOS	  7996
$PNTRS	  8159
$PNTSP	  7146	  8999
$PODCD	  6875
$PODMV	  6873
$PODT	  8005
$PRGCM	  8069
$PRGHL	  7968
$PRGNP	  8160
$PRGXX	  2697
$PRINT	  8083
$PRNTH	  6609	  6685	  6688	  6691	  6704	  6711	 13675#
$PROG	  2575
$PROG1	  5492
$PROG2	  5495	  5497	  5499	  5501	  5503
$PROL3	  6991	  8080
$PRT36	  6936
$PSLAS	  7993
$PSPAC	  7992
$PSSAV	  6424	  6485	 13712#
$PTAB	  8179
$PTCO	  6819
$PTTY	  8084
$PTTY1	  6655
$PTTY2	  6666
$PTTYC	  2047	  6631
$PWRCN	  8240	  8260	 13541#
$PWRDN	  6199	  8227
$PWRUP	  8214
$QCLR	 11534	 11537	 11540
$QUEUE	 11182	 11361	 11367	 11385	 11395
$R0SAV	  6416	  6435	 13719#
$R1SAV	 13718#
$R2SAV	 13717#
$R3SAV	 13716#
$R4SAV	 13715#
$R50UP	  8093
$R5SAV	  6417	 13714#
$RC	  2526
$RCP	  9024	  9026	  9028	  9030
$RCRAM	  8038
$RDLST	 12907
$RDRAM	  8064
$REGRS	  8007
$REGSA	  8006
$RESVD	  6198
$RLCB	 11404
$RN	  2507
$RNN	  3615	  4245
$RNX	  3552
$RP	  2690	  2692#
$RPINF	 13638#
$RPT	  2030	  2032	  2034	  2050	  2083	  2094	  2682	  2710	  2762	  7334
$RQCB	 11413
$RUNLP	  4489	  4626	  4628	  7969
$SAV20	  4140	  4151	 13735#
$SAVAL	 11605
$SAVRG	 11269	 11684	 11748
$SAVVR	 11070	 11137	 11213	 11293	 11317	 11430	 11462	 11475	 11517
$SBRIN	  1857
$SETFL	  8011
$SETMP	  8081
$SHFTL	  8010
$SHFTR	  8009
$SHFTX	  7835	  7840	  7846	  7856
$SI	  2508
$SM	  8042
$SMERR	  8741
$SMRLS	 12884
$SMTAB	  8637
$SP	  2506
$SPCMR	 12771	 13134
$SPSAV	  6425	  6453	  6484	 13713#
$SQASH	 12917
$ST	  2512
$STD	    90#	  1907
$STDAT	 13193	 13750#
$STERR	  4214	  4218	  4229	  4238	  4241
$STJRS	 12416
$STL	    92#	  1913
$STM	    93#	  1916
$STMT1	 13271
$STMTB	 13270
$STODD	 13268	 13314	 13558#
$STRCH	 12836
$STTB1	  4226
$STUF	  1993	  7946
$SVH	  7544	  7609	  7633	 13688#
$SVM	  7545	  7610	  7631	 13689#
$SW	  2513
$SWITC	  8013
$SWMON	 13605#
$SWS10	  5223	  5225	  5229	 13555#
$SWTCH	  7160	  7165	 13721#
$SWTSA	  8014
$TADSP	  2001	  4615	  4620	  4635	  4676	  4713	  4808	  4853	  4861	  4938
	  4990	  5018	  5051	  5067	  5084	  5091	  5102	  5134	  5147	  5157
	  5166	  5250	  5268	  5330	  5342	  8376	  8377	  8557	  8560	 11498
	 13756#
$TBLL	  7525
$TCX	  5255#	  5264	  5266	  5273
$TEMP0	  8345	 13705#
$TENCH	  8138
$TENRN	  4404	  4508
$TENSP	  8041
$TENSW	  8079
$TF	  2555
$TI36C	  4234	  5308	  7543	  7611
$TIALT	  7359	  7360	  7361
$TIBEL	  7326	  7358	  7368	  7369
$TIBKS	  7365
$TICC	  4470	  6812	  7332	  7364	 10716
$TICHR	  4468	  4606	  6803	  7097	  7220	  7377	  7378	  7382	  7399	  8266
	 10711	 13690#
$TICL	  7362
$TICO	  7367
$TICR	  7356
$TICRA	  7983
$TICU	  7363
$TICX	  6836	  7370
$TIEXT	  7304	  7321
$TILF	  7357
$TILN1	  7209#	  7280	  7307	  7315	  7317
$TILN2	  7187	  7218#
$TILN3	  7184	  7205
$TILNX	  7201	  7276	  7287
$TILRN	  4602
$TIMOT	  6197	  6248
$TIRDY	  4466	  4584	  4600	  6801	  7095	  7216	  8264	 10709
$TIRUB	  7366
$TKB	  7375	  7377
$TKS	  7373
$TMINU	  7454	  7502	  7548
$TNBUF	  4791	  4792	  4819	  4825	 13670#
$TNCHR	  5271	  6805	  7222	 13671#
$TNPTC	  4791	  4800	  4803	  4805	  4825	 13669#
$TNPTR	  4792	  4800	  4824	 13668#
$TOCHR	  4646	  6664	  6698	  6823	  7433	  7444	 13691#
$TOCTE	  8140
$TOOUT	  4647	  6665	  6699	  6827
$TORDY	  4590	  6624	  6662	  6696	  6821
$TP	  2553
$TPB	  7433
$TPLIN	  5777	  6645	  6647	 13677#
$TPLIT	  6616	  6647	  6649	  7193	 13678#
$TPS	  7408
$TPW	  5778
$TPWF	  5801
$TTALT	  7977
$TTBAC	  8078
$TTBTR	  7985
$TTCOC	  7974
$TTERM	  7482	  7642	  8141
$TTI36	  7978
$TTIBR	  7979
$TTICC	  8177
$TTICH	  7971
$TTIDE	  7975
$TTILI	  4558	  4612	  7970
$TTILN	  8176
$TTIOC	  7973
$TTITR	  7984
$TTIX1	  7099
$TTIX2	  7079	  7096
$TTIYE	  7976
$TTLKF	  2131	  4896	  6565	  6799	  7093	  7098	 13682#
$TTLOO	  7972
$TTPIN	  8161
$TTS36	  7982
$TTSAV	  6870	  6975	  7501	  7520	  9305	  9323	  9325	 13674#
$TTSDL	  7731	  7733	  7980
$TTSDO	  7981
$TTSDX	  7729	  7760	  7789	  7791	  7796	  7803	  7811	  7813
$TTYFL	  5799	  6090	  6243	  6681	 13685#
$TTYIN	 13673#
$TTYTI	  5037	  7195	  7213	  7219	 13709#
$TW	  2554
$VB	  2630
$VB1	  4429
$VBX	  4435	  4443	  4447
$VERIF	  2584
$VMPC	 13340
$VMPC1	 13342
$WCRAM	  8037
$WDRAM	  8065
$WWADR	  8039
$XCT	  8043
$XOFLG	 13679#
%%DDT	    63#	    81	  6173	  6206	  6470	  6473
%%EOP	  2227	  2516	  6329	  6336
%%QMP	    68#	  4570	  4573	  4576	  4711	  4712	  4721	  6179	  6189	  6294
	  6308	 10988	 12716	 13573
%0	   581
%1	   582
%2	   583
%3	   584
%4	   585
%5	   586
%6	   587	   588
%7	   589
%DDTS	    82#
.AC	  2514
.AD	  2540
.ADB	  2947
.ALL	  2547
.AR	  2536
.BC10	 11494	 13532#
.BC11	 11433	 11453	 13531#
.BR	  2537
.BU	  2510
.CCMN1	  3868
.CE	  2548
.CEP	  4062	  4067	  4072	  4077
.CF	  2550
.CI	  2549
.CIF	  3692
.CNERR	  4261	  4420	  4499
.CNSER	  3793
.CR	  2533
.CS	  2532
.CSR	  3830#	  3861
.CSRER	  3838	  3865	  3985	  4019
.DA	  2498
.DAT1	  3112	  3477	  3605	  8321	  8353	  8385	  8392	  8424	  8463	  8794
	  8961	 12631	 12654	 12955	 13535#
.DAT2	  2910	  3113	  3421	  3429	  3462	  3476	  8322	  8386	  8391	  8425
	  8429	  8435	  8441	  8462	  8784	  8960	 12628	 12653	 12954	 13081
	 13090	 13107	 13300	 13536#
.DAT3	  4738	  4745	  4752	  4759	  8323	  8387	  8390	  8426	  8461	  8468
	  8753	 12625	 12652	 12663	 12736	 12912	 13295	 13305	 13311	 13537#
.DAX	  2999
.DB	  2522
.DE	  2520
.DEB	  5449
.DELAY	  6159	 11612	 12407	 12454	 13538#
.DFDP	  2899	  2919	  2932	  2940	  2954	  2962	  2973	  2981	  2993
.DFRD	  2496
.DFRDA	  2858	  2876	  2881	  9056	 13702#
.DFWRT	  2495
.DFX	  2801	  2826	  2880	  2890
.DFXCT	  2494
.DIAG1	  3777	  3787	  4422	  4561	  4565	  8381	  8420	  8737	  8772	  8776
	 12473	 12476	 12531	 12546	 12549	 12564	 12571	 12575	 12587	 12595
	 12632	 12648	 12738	 12743	 12745	 12886	 12903	 13077	 13202	 13210
	 13215	 13226	 13240	 13244	 13246	 13526#
.DIAG2	 12715	 13525#
.DIAG3	 13523#
.DP	  2502
.DPCM1	  4406
.DPCOM	  4419
.DPNX	  2504
.DPNX1	  4417
.DPS	  4396
.DPXAD	  4394	  4414	  4490	  4544	  8316	 10304	 13703#
.EADR	  5376	  5453	 13697#
.EB	  2521
.EE	  2519
.EEB	  5372
.ERG	  2545
.EXCOM	  4501	  4525	  4540	  4550
.EXM	  2501
.EXMN1	  4543
.EXMNX	  2503	  4539
.EXMSP	  4493
.FE	  2544
.FM	  2539
.FS	  2497
.HC	  2622
.HCADR	  6423	  6429	  6486	 13731#
.HCFLG	  6414	  6465	  6476	  6479	 13730#
.MM	  2529
.MMC	  3991
.MMX	  4004	  4033
.MQ	  2538
.MRESE	  2500
.MT	  2531
.MU	  2530
.MZ	  2505
.PC	  2541
.PCF	  3011
.PD	  2534
.PE	  2535
.PI	  2546
.PL	  2509
.PLX	  3677	  3687
.RI	  2623
.RPT	  2493
.RPTP	  2551
.RPTX	  2688
.SC	  2543
.SE	  2518
.SM	  2511
.STDTE	  4627	  5071	  8371	  8396	  8474	 11270	 11282	 11294	 11318	 11502
	 11613	 12637	 12718	 13524#
.T10AD	 11493	 13530#
.T10DT	 13528#
.T11AD	 11447	 13529#
.T11DT	 13527#
.TD	  2552
.TENA1	  8393	 12633	 13534#
.TENA2	  8394	 12634	 13533#
.VM	  2542
.VMH	  3051
.XCT	  2499
.XCT1	  3761
.XCT2	  3758	  3803	  3821
.XCTER	  3546	  3616	  3676	  3686	  3748	  3756	  3766	  3798	  3848	  4265
	 10294
.ZE	  2523
CALL	 11012#	 11063	 11080	 11082	 11093	 11132	 11144	 11172	 11178	 11264
	 11273	 11277	 11303	 11354	 11370	 11376	 11379	 11403	 11412	 11425
	 11441	 11504	 11625	 11637	 11815	 11834	 11850
EXIT	   467#	  2717	  2745	  3535	  3647	  5256	  6406	  6524	  6701	  6948
	  7073	  7120	  7178	  7297	  7716	  7805	  7862	  8483	  8570	  8600
	  8614	  8647	  8743	  8763	  8801	  9014	  9290	  9717	 10470	 10587
	 10666	 10788	 10828	 12455	 12485	 12557	 12597	 12670	 12762	 12791
	 12853	 12966	 13023	 13051	 13070	 13114	 13136	 13188	 13228	 13260
	 13272	 13393
EXITER	   475#	  2723	  2747	  5258	  7117	  7261	  7483	  7645	  7723	  8652
	  8805	 10478	 10554	 10655	 10768	 10831	 13248
EXITSK	   471#	  7828
EXOR	   554#
I10	   971#	 12435
INFORM	 13413#	 13469	 13482	 13766
IO10	  1010#	  3694	  3719	  4169	  4272	  4307	  4340	  4365	  8486	  8655
	  8690
MULT	   496#
PCFTE	  3147#	  3153	  3170	  3189	  3208	  3226	  3244	  3263	  3284	  3305
	  3327	  3347	  3367	  3385
PMSG	   430#	  2017	  2023	  2079	  2828	  3014	  3055	  3065	  3073	  3104
	  3456	  3471	  3484	  3548	  3607	  3649	  3805	  3953	  4052	  4082
	  4116	  4130	  4156	  4162	  4409	  4431	  4439	  4485	  4530	  4609
	  4726	  4733	  4768	  4779	  4813	  4867	  5076	  5336	  5669	  5674
	  6086	  6257	  6396	  6409	  6426	  6848	  7283	  7301	  7896	  7902
	  7908	  7921	  7927	  7934	  8257	  8305	  8405	  8432	  8438	  8444
	  8451	  8584	  8589	  8594	  8970	  9113	  9124	  9132	  9166	  9240
	  9949	 10070	 10079	 10568	 10596	 10762	 10765	 10772	 10782	 10895
	 10932	 10941	 10948	 10972	 11346	 11968	 11973	 11977	 11982	 11986
	 12489	 12494	 12502	 12506
PMSGR	   442#	  2895	  2928	  2936	  2950	  2958	  2969	  2977	  2989	  3406
	  3413
PNTMSG	   454#
POP	   488#	  2142	  3034	  3532	  4125	  4159	  4230	  5043	  5072	  5114
	  5127	  5209	  5210	  5211	  5212	  5272	  5863	  5864	  5937	  5938
	  5965	  6031	  6032	  6033	  6405	  6546	  6568	  6601	  6971	  7246
	  7260	  7275	  7286	  7296	  7715	  7773	  7775	  7891	  7913	  8292
	  8389	  8390	  8391	  8392	  8413	  8414	  8459	  8460	  8461	  8462
	  8463	  8473	  8559	  8568	  8569	  8587	  8592	  8613	  8641	  8646
	  8650	  8651	  8800	  8804	  8829	  8852	  8914	  9821	  9999	 10037
	 10099	 10116	 10355	 10468	 10473	 10649	 10717	 10827	 10830	 11349
	 11352	 11454	 11503	 11563	 11598	 11641	 11785	 11817	 11818	 11819
	 11820	 11821	 11822	 11836	 11837	 11838	 11852	 11853	 11854	 12649
	 12669	 12761	 12783	 12790	 12890	 12942	 13063	 13101	 13113	 13176
	 13391
PUSH	   480#	  1995	  2139	  3027	  3504	  4115	  4155	  4227	  5040	  5066
	  5109	  5122	  5176	  5177	  5178	  5179	  5267	  5850	  5851	  5932
	  5933	  5956	  5957	  5978	  5979	  5980	  6395	  6401	  6540	  6566
	  6589	  6957	  7185	  7206	  7242	  7679	  7763	  7881	  7882	  7883
	  7895	  7901	  7907	  7914	  7933	  7947	  8210	  8383	  8384	  8385
	  8386	  8404	  8409	  8422	  8423	  8424	  8425	  8455	  8467	  8555
	  8556	  8564	  8605	  8629	  8638	  8767	  8810	  8848	  8911	  9811
	  9983	 10015	 10090	 10112	 10342	 10437	 10603	 10708	 10800	 11344
	 11431	 11463	 11476	 11559	 11586	 11606	 11762	 11808	 11809	 11810
	 11811	 11812	 11830	 11831	 11832	 11846	 11847	 11848	 12619	 12662
	 12702	 12766	 12779	 12882	 12932	 13061	 13074	 13174	 13346
QCLR	 11037#	 11533	 11536	 11539
QUEUE	 11032#	 11181	 11360	 11366	 11384	 11394
RETURN	 11016#	 11084	 11095	 11099	 11121	 11125	 11200	 11207	 11222	 11283
	 11305	 11331	 11356	 11363	 11372	 11387	 11397	 11405	 11418	 11506
	 11550	 11642	 11726	 11788	 11792	 11823	 11839	 11855
SAVAL	 11020#	 11604
SAVRG	 11028#	 11268	 11683	 11747
SAVVR	 11024#	 11069	 11136	 11212	 11292	 11316	 11429	 11461	 11474	 11516
SL	   522#	  4690	  4839	  4907	  4967	  5095	  5198	  7234	  7955	  9843
	  9851	  9873	 10891	 10913	 10914
SR	   538#	  3829	  5142	  6687	  6690	  6960	  6964	  9173	 13222
WD22	   994#
WD36	   959#	 12432
WFONE	  1057#	 12635
WFZERO	  1040#	 12474	 12547	 12573
.BUFB	 13512#	 13600	 13663	 13667	 13670	 13674
.BUFW	 13499#	 13523	 13524	 13525	 13526	 13527	 13528	 13529	 13530	 13531
	 13532	 13533	 13534	 13535	 13536	 13537	 13538	 13539	 13540	 13541
	 13542	 13543	 13544	 13545	 13546	 13547	 13548	 13549	 13550	 13551
	 13552	 13553	 13554	 13555	 13556	 13557	 13558	 13559	 13560	 13561
	 13562	 13563	 13564	 13565	 13566	 13567	 13568	 13569	 13570	 13571
	 13572	 13573	 13574	 13575	 13576	 13577	 13578	 13579	 13580	 13581
	 13582	 13583	 13584	 13585	 13586	 13587	 13588	 13589	 13590	 13591
	 13592	 13593	 13594	 13595	 13596	 13597	 13598	 13599	 13601	 13602
	 13603	 13604	 13605	 13606	 13607	 13608	 13609	 13610	 13611	 13612
	 13613	 13614	 13615	 13616	 13617	 13618	 13619	 13620	 13621	 13622
	 13623	 13624	 13625	 13626	 13627	 13628	 13629	 13630	 13631	 13632
	 13633	 13634	 13635	 13636	 13637	 13638	 13639	 13640	 13641	 13642
	 13643	 13644	 13645	 13646	 13647	 13648	 13649	 13650	 13651	 13652
	 13653	 13654	 13655	 13656	 13657	 13658	 13659	 13660	 13661	 13662
	 13664	 13665	 13666	 13668	 13669	 13671	 13672	 13673	 13675	 13676
	 13677	 13678	 13679	 13680	 13681	 13682	 13683	 13684	 13685	 13686
	 13687	 13688	 13689	 13690	 13691	 13692	 13693	 13694	 13695	 13696
	 13697	 13698	 13699	 13700	 13701	 13702	 13703	 13704	 13705	 13706
	 13707	 13708	 13709	 13710	 13711	 13712	 13713	 13714	 13715	 13716
	 13717	 13718	 13719	 13720	 13721	 13722	 13723	 13724	 13725	 13726
	 13727	 13728	 13729	 13730	 13731	 13732	 13733	 13734	 13735	 13736
	 13737	 13738	 13739	 13740	 13741	 13742	 13743	 13744	 13745	 13746
	 13747	 13748	 13749	 13750	 13751	 13752	 13753	 13754	 13755	 13756
	 13757
.LIT	   511#	  3154	  3171	  3190	  3209	  3227	  3245	  3264	  3285	  3306
	  3328	  3348	  3368	  3386